aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/FoldingSet.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-01-19 03:58:00 +0000
committerTed Kremenek <kremenek@apple.com>2008-01-19 03:58:00 +0000
commitf1210f7c43283890fd2e20366df2162abc4f7665 (patch)
treecec002f8f7534951d51d46c5e145bdd70de9fb8b /llvm/lib/Support/FoldingSet.cpp
parent137d693e090cf3cc26bbd9666533f281fa5d56e7 (diff)
downloadllvm-f1210f7c43283890fd2e20366df2162abc4f7665.zip
llvm-f1210f7c43283890fd2e20366df2162abc4f7665.tar.gz
llvm-f1210f7c43283890fd2e20366df2162abc4f7665.tar.bz2
Made 'profiling' of objects in a FoldingSet trait-based using FoldingSetTrait
instead of always assuming that the stored objects had a method called 'Profile'. The default behavior is to dispatch to a 'Profile' method (as before), but via template specialization this behavior can now be overridden by clients. Added templated class 'FoldingSetNodeWrapper', a generic wrapper class that allows one to insert objects into a FoldingSet that do not directly inherit from FoldingSetNode. This is useful for inserting objects that do not always need to pay the overhead of inheriting from FoldingSetNode, or were designed with that behavior in mind. llvm-svn: 46186
Diffstat (limited to 'llvm/lib/Support/FoldingSet.cpp')
0 files changed, 0 insertions, 0 deletions