Lines Matching full:factory
78 /// should use a Factory object to create maps instead of directly
83 class Factory {
84 typename TreeTy::Factory F;
88 Factory(bool canonicalize = true) : Canonicalize(canonicalize) {} in Canonicalize()
90 Factory(BumpPtrAllocator &Alloc, bool canonicalize = true)
93 Factory(const Factory &) = delete;
94 Factory &operator=(const Factory &) = delete;
109 typename TreeTy::Factory *getTreeFactory() const { in getTreeFactory()
110 return const_cast<typename TreeTy::Factory *>(&F); in getTreeFactory()
212 using FactoryTy = typename TreeTy::Factory;
216 FactoryTy *Factory; variable
220 /// should use a Factory object to create maps instead of directly
224 : Root(const_cast<TreeTy *>(R)), Factory(F) {} in ImmutableMapRef()
227 typename ImmutableMap<KeyT, ValT>::Factory &F) in ImmutableMapRef()
228 : Root(X.getRootWithoutRetain()), Factory(F.getTreeFactory()) {} in ImmutableMapRef()
244 Factory->add(Root.get(), std::pair<key_type, data_type>(K, D)); in add()
245 return ImmutableMapRef(NewT, Factory); in add()
249 TreeTy *NewT = Factory->remove(Root.get(), K); in remove()
250 return ImmutableMapRef(NewT, Factory); in remove()
258 return ImmutableMap<KeyT, ValT>(Factory->getCanonicalTree(Root.get())); in asImmutableMap()