Reputation: 9513
Environment: Swift, Xcode 6
How do I get a list (po) of data items of a Swift array?
The following is Swift code for building a simple array:
kindArray += "Two"
kindArray.append("Two")
var myStringArray: String[]
myStringArray = ["One", "Two"]
myStringArray.append("Three")
myStringArray += "Four"
var firstItem = myStringArray[0]
Here's the debug output:
(lldb) po firstItem
"One"
(lldb) po kindArray
Some
{
Some = 0x0ffb0000 {}
}
(lldb) po myStringArray
size=1
{
[0] = {
core = {
_baseAddress = Builtin.RawPointer = 0x00000008
_countAndFlags = 34718
_owner = Some {
Some = (instance_type = Builtin.RawPointer = 0x80000003)
}
}
}
}
All I'm getting is 'Some' and 'size'.
I would like to show the contents.
Upvotes: 38
Views: 22026
Reputation: 581
po myStringArray.map{ $0 }
if you have an array of custom objects
po myArray.map.{ $0.customProperty }
Upvotes: 3
Reputation: 94753
You should be able to take advantage of the Printable
or DebugPrintable
protocols. Simply print out the description
or debugDescription
property:
po myStringArray.description
po myStringArray.debugDescription
Upvotes: 13