51    if (instance_ != 
nullptr) {
 
   53      ss << 
"Mock `" << 
typeid(GlobalMock).name()
 
   54         << 
"` is already instantiated.";
 
   55      throw std::runtime_error(std::move(ss).str());
 
   62  virtual ~GlobalMock() { instance_ = 
nullptr; }
 
   64  static Mock &Instance() {
 
   65    if (instance_ == 
nullptr) {
 
   67      ss << 
"Mock `" << 
typeid(GlobalMock).name() << 
"` not instantiated yet.";
 
   68      throw std::runtime_error(std::move(ss).str());
 
   70    return *
static_cast<Mock *
>(instance_);
 
   73  GlobalMock(
const GlobalMock &) = 
delete;
 
   74  GlobalMock &operator=(
const GlobalMock &) = 
delete;
 
   75  GlobalMock(GlobalMock &&) = 
delete;
 
   76  GlobalMock &operator=(GlobalMock &&) = 
delete;
 
   79  static GlobalMock<Mock> *instance_;