summaryrefslogtreecommitdiffstats
path: root/lldb/source/DataFormatters/ValueObjectPrinter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Further fixes to the dynamic type system prompted by ↵Enrico Granata2013-10-311-2/+1
| | | | | | ObjCDataFormatterTestCase.test_nserror_with_dsym_and_run_command llvm-svn: 193818
* Improvements to the ValueObjectPrinter to behave correctly in more dynamic ↵Enrico Granata2013-10-221-8/+29
| | | | | | value cases llvm-svn: 193204
* --raw was not always doing the right thing w.r.t. one-lining children. This ↵Enrico Granata2013-10-071-1/+1
| | | | | | checkin fixes that llvm-svn: 192116
* Cleaner way to work around the lack of delegating constructors on some ↵Enrico Granata2013-10-051-35/+32
| | | | | | versions of GCC llvm-svn: 192013
* <rdar://problem/12042982>Enrico Granata2013-10-041-1/+61
| | | | | | | | | | | | | | | | | | | This radar extends the notion of one-liner summaries to automagically apply in a few interesting cases More specifically, this checkin changes the printout of ValueObjects to print on one-line (as if type summary add -c had been applied) iff: this ValueObject does not have a summary its children have no synthetic children its children are not a non-empty base class without a summary its children do not have a summary that asks for children to show up the aggregate length of all the names of all the children is <= 50 characters you did not ask to see the types during a printout your pointer depth is 0 This is meant to simplify the way LLDB shows data on screen for small structs and similarly compact data types (e.g. std::pair<int,int> anyone?) Feedback is especially welcome on how the feature feels and corner cases where we should apply this printout and don't (or viceversa, we are applying it when we shouldn't be) llvm-svn: 191996
* A more thorough fix for the newlines issueEnrico Granata2013-10-031-0/+2
| | | | llvm-svn: 191919
* <rdar://problem/15118409>Enrico Granata2013-10-031-2/+2
| | | | | | Fix an issue with the new ValueObjectPrinter where in some cases spurious \n would be printed llvm-svn: 191869
* Fix build with GCC 4.6.2 (non-c++11 compilant compiler)Daniel Malea2013-09-301-5/+16
| | | | | | - delegating c'tors not supported llvm-svn: 191709
* <rdar://problem/14393032>Enrico Granata2013-09-301-0/+533
DumpValueObject() 2.0 This checkin restores pre-Xcode5 functionality to the "po" (expr -O) command: - expr now has a new --description-verbosity (-v) argument, which takes either compact or full as a value (-v is the same as -vfull) When the full mode is on, "po" will show the extended output with type name, persistent variable name and value, as in (lldb) expr -O -v -- foo (id) $0 = 0x000000010010baf0 { 1 = 2; 2 = 3; } When -v is omitted, or -vcompact is passed, the Xcode5-style output will be shown, as in (lldb) expr -O -- foo { 1 = 2; 2 = 3; } - for a non-ObjectiveC object, LLDB will still try to retrieve a summary and/or value to display (lldb) po 5 5 -v also works in this mode (lldb) expr -O -vfull -- 5 (int) $4 = 5 On top of that, this is a major refactoring of the ValueObject printing code. The functionality is now factored into a ValueObjectPrinter class for easier maintenance in the future DumpValueObject() was turned into an instance method ValueObject::Dump() which simply calls through to the printer code, Dump_Impl has been removed Test case to follow llvm-svn: 191694
OpenPOWER on IntegriCloud