diff options
| author | Ted Kremenek <kremenek@apple.com> | 2012-12-06 19:41:30 +0000 |
|---|---|---|
| committer | Ted Kremenek <kremenek@apple.com> | 2012-12-06 19:41:30 +0000 |
| commit | 625add4c46373e570cd21603a552c2cf16ada28d (patch) | |
| tree | b001cfe7081f08e773289c8014cc1492cedf2aed /llvm | |
| parent | 8c1e667b7b368fe68673d3b59c946c98406d4a3d (diff) | |
| download | bcm5719-llvm-625add4c46373e570cd21603a552c2cf16ada28d.tar.gz bcm5719-llvm-625add4c46373e570cd21603a552c2cf16ada28d.zip | |
Revert "Allow modifying an ImmutableMap without canonicalizing it immediately."
Jordan and I discussed this, and we don't want this in the API.
llvm-svn: 169541
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/ADT/ImmutableMap.h | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/llvm/include/llvm/ADT/ImmutableMap.h b/llvm/include/llvm/ADT/ImmutableMap.h index 0043dc6f000..4883c5ba0a6 100644 --- a/llvm/include/llvm/ADT/ImmutableMap.h +++ b/llvm/include/llvm/ADT/ImmutableMap.h @@ -96,40 +96,27 @@ public: class Factory { typename TreeTy::Factory F; - const bool Canonicalizing; + const bool Canonicalize; public: Factory(bool canonicalize = true) - : Canonicalizing(canonicalize) {} + : Canonicalize(canonicalize) {} Factory(BumpPtrAllocator& Alloc, bool canonicalize = true) - : F(Alloc), Canonicalizing(canonicalize) {} + : F(Alloc), Canonicalize(canonicalize) {} ImmutableMap getEmptyMap() { return ImmutableMap(F.getEmptyTree()); } - ImmutableMap add(ImmutableMap Old, key_type_ref K, data_type_ref D, - bool Canonicalize) { + ImmutableMap add(ImmutableMap Old, key_type_ref K, data_type_ref D) { TreeTy *T = F.add(Old.Root, std::pair<key_type,data_type>(K,D)); return ImmutableMap(Canonicalize ? F.getCanonicalTree(T): T); } - ImmutableMap add(ImmutableMap Old, key_type_ref K, data_type_ref D) { - return add(Old, K, D, Canonicalizing); - } - - ImmutableMap remove(ImmutableMap Old, key_type_ref K, bool Canonicalize) { + ImmutableMap remove(ImmutableMap Old, key_type_ref K) { TreeTy *T = F.remove(Old.Root,K); return ImmutableMap(Canonicalize ? F.getCanonicalTree(T): T); } - ImmutableMap remove(ImmutableMap Old, key_type_ref K) { - return remove(Old, K, Canonicalizing); - } - - ImmutableMap getCanonicalMap(ImmutableMap Map) { - return ImmutableMap(F.getCanonicalTree(Map.Root)); - } - typename TreeTy::Factory *getTreeFactory() const { return const_cast<typename TreeTy::Factory *>(&F); } |

