How to view contents of NSDictionary variable in Xcode debugger?

cocoa, debugging, objective-c, xcode

Solution

In the gdb window you can use `po` to inspect the object.

given:

NSMutableDictionary* dict = [[NSMutableDictionary alloc] init];
[dict setObject:@"foo" forKey:@"bar"];
[dict setObject:@"fiz" forKey:@"buz"];

setting a breakpoint after the objects are added you can inspect what is in the dictionary

(gdb) po dict
{
  bar = foo;
  buz = fiz;
}

Of course these are `NSString` objects that print nicely. YMMV with other complex objects.

Problem

Is there a way to view the key/value pairs of a NSDictionary variable through the Xcode debugger? Here's the extent of information when it is fully expanded in the variable window: ``` Variable Value Summary jsonDict 0x45c540 4 key/value pairs NSObject {...} isa 0xa06e0720 ``` I was expecting it to show me each element of the dictionary (similar to an array variable).

Original source