[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?

> Vadim


Thanks,
- Enrico
📩 egranata@.com ☎️ 27683

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20160125/0c6299ca/attachment.html>


More information about the lldb-dev mailing list