llvm-project/lldb/test
Med Ismail Bennani 8f5beb4c4b
[lldb/Dataformatter] Add support for CoreFoundation Dictionaries and Sets.
This patch improves data formatting for CoreFoundation containers:
CFDictionary and CFSet.

These data formatters make the containers and their children appear in Xcode's
variables view (and on the command line) without having to expand the
data structure.

Previous implementation only supported showing the container's element count.

```
(lldb) frame var dict
(__NSCFDictionary *) dict = 0x00000001004062b0 2 key/value pairs

(lldb) frame var set
(__NSCFSet *) set = 0x0000000100406330 2 elements
```
Now the variable can be dereferenced to dispaly the container's children:

```
(lldb) frame var *dict
(__NSCFDictionary) *dict = {
  [0] = {
    key = 0x0000000100004050 @"123"
    value = 0x0000000100004090 @"456"
  }
  [1] = {
    key = 0x0000000100004030 @"abc"
    value = 0x0000000100004070 @"def"
  }
}

(lldb) frame var *set
(__NSCFSet) *set = {
  [0] = 0x0000000100004050 @"123"
  [1] = 0x0000000100004030 @"abc"
}
```

rdar://39882287

Differential Revision: https://reviews.llvm.org/D78396

Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
2020-04-27 22:10:11 +02:00
..
API [lldb/Dataformatter] Add support for CoreFoundation Dictionaries and Sets. 2020-04-27 22:10:11 +02:00
Shell Add Objective-C property accessors loaded from Clang module DWARF to lookup 2020-04-24 11:10:50 -07:00
Unit [CMake] Split logic across test suite subdirectories (NFC) 2019-10-24 10:58:22 -07:00
CMakeLists.txt Another attempt of D77452 - da0e91fee6 2020-04-15 17:52:36 -07:00
lit.cfg.py [test] Cleanup top-level lit.cfg.py 2019-10-10 19:51:47 +00:00
lit.site.cfg.py.in Re-land "[test] Split LLDB tests into API, Shell & Unit" 2019-10-09 19:22:02 +00:00