[lldb-dev] Selectively disabling value formatter
Enrico Granata via lldb-dev
lldb-dev at lists.llvm.org
Mon Jan 25 16:33:03 PST 2016
> On Jan 25, 2016, at 4:04 PM, Vadim Chugunov <vadimcn at gmail.com> wrote:
> On Mon, Jan 25, 2016 at 3:31 PM, Enrico Granata <egranata at apple.com <mailto:egranata at apple.com>> wrote:
>> Whose IsSynthetic() is supposed to return True,- the parent's or the child's?
> What do you mean with this?
> The model is that you have an SBValue, and that SBValue could be backed by a synthetic value. If you want, you can LLDB not to prefer synthetic values - which changes the way the current SBValue works - or for the same backing variable, give you a non-synthetic SBValue, which is what GetNonSyntheticValue() does
> Parent/child should have nothing to do with this, unless I am misunderstanding you
> I guess I am confused about what "synthetic" refers to. Let's say I have an SBValue representing std::vector and stl formatters are enabled. As far as I understand, that SBValue itself (the parent) would be considered "real", but its children (the vector elements) would be "synthetic" (because they were generated by formatter).
In your scenario, the SBValue for the vector is synthetic; the SBValue instances for each of the vector elements are not synthetic (well, unless, they are themselves vectors or other things with synthetic providers)
Does that match what you’re seeing?
📩 egranata@.com ☎️ 27683
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the lldb-dev