Lines Matching refs:Factory
76 /// should use a Factory object to create maps instead of directly
97 class Factory {
98 typename TreeTy::Factory F;
102 Factory(bool canonicalize = true)
105 Factory(BumpPtrAllocator& Alloc, bool canonicalize = true)
120 typename TreeTy::Factory *getTreeFactory() const {
121 return const_cast<typename TreeTy::Factory *>(&F);
125 Factory(const Factory& RHS) LLVM_DELETED_FUNCTION;
126 void operator=(const Factory& RHS) LLVM_DELETED_FUNCTION;
281 typedef typename TreeTy::Factory FactoryTy;
285 FactoryTy *Factory;
289 /// should use a Factory object to create maps instead of directly
294 Factory(F) {
299 typename ImmutableMap<KeyT, ValT>::Factory &F)
301 Factory(F.getTreeFactory()) {
307 Factory(X.Factory) {
320 Factory = X.Factory;
343 TreeTy *NewT = Factory->add(Root, std::pair<key_type, data_type>(K, D));
344 return ImmutableMapRef(NewT, Factory);
348 TreeTy *NewT = Factory->remove(Root, K);
349 return ImmutableMapRef(NewT, Factory);
357 return ImmutableMap<KeyT, ValT>(Factory->getCanonicalTree(Root));