[Lldb-commits] [PATCH] D53590: Refactor SetBaseClassesForType and DeleteBaseClasses to be more C++'y
Zachary Turner via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Tue Oct 23 11:00:56 PDT 2018
zturner created this revision.
zturner added reviewers: labath, davide, clayborg.
Herald added a subscriber: JDevlieghere.
[NFC] Refactor SetBaseClasses and DeleteBaseClasses.
We currently had a 2-step process where we had to call
SetBaseClassesForType and DeleteBaseClasses. Every single caller
followed this exact 2-step process, and there was manual memory
management going on with raw pointers. We can do better than this
by storing a vector of unique_ptrs and passing this around.
This makes for a cleaner API, and we only need to call one method
so there is no possibility of a user forgetting to call
In addition to this, it also makes for a *simpler* API. Part of
why I wanted to do this is because when I was implementing the native
PDB interface I had to spend some time understanding exactly what I
was deleting and why. ClangAST has significant mental overhead
associated with it, and reducing the API surface can go along
way to making it simpler for people to understand.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 16825 bytes
Desc: not available
More information about the lldb-commits