summaryrefslogtreecommitdiff
path: root/src/mongo/db/catalog/index_catalog_entry.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/catalog/index_catalog_entry.h')
-rw-r--r--src/mongo/db/catalog/index_catalog_entry.h20
1 files changed, 9 insertions, 11 deletions
diff --git a/src/mongo/db/catalog/index_catalog_entry.h b/src/mongo/db/catalog/index_catalog_entry.h
index fecfd197bb1..20d748c9846 100644
--- a/src/mongo/db/catalog/index_catalog_entry.h
+++ b/src/mongo/db/catalog/index_catalog_entry.h
@@ -32,6 +32,7 @@
#include <string>
#include "mongo/base/owned_pointer_vector.h"
+#include "mongo/base/shim.h"
#include "mongo/bson/ordering.h"
#include "mongo/bson/timestamp.h"
#include "mongo/db/index/multikey_paths.h"
@@ -102,18 +103,15 @@ public:
virtual void setMinimumVisibleSnapshot(Timestamp name) = 0;
};
-private:
- static std::unique_ptr<Impl> makeImpl(IndexCatalogEntry* this_,
- OperationContext* opCtx,
- StringData ns,
- CollectionCatalogEntry* collection,
- std::unique_ptr<IndexDescriptor> descriptor,
- CollectionInfoCache* infoCache);
-
public:
- using factory_function_type = decltype(makeImpl);
-
- static void registerFactory(stdx::function<factory_function_type> factory);
+ static MONGO_DECLARE_SHIM((IndexCatalogEntry * this_,
+ OperationContext* opCtx,
+ StringData ns,
+ CollectionCatalogEntry* collection,
+ std::unique_ptr<IndexDescriptor> descriptor,
+ CollectionInfoCache* infoCache,
+ PrivateTo<IndexCatalogEntry>)
+ ->std::unique_ptr<Impl>) makeImpl;
explicit IndexCatalogEntry(
OperationContext* opCtx,