2

I'm using Playgrounds in Xcode 7.1 (beta 3) but having trouble with the captureValue() function:

captureValue:withIdentifier: Captures a value to be displayed with the specified identifier in the timeline.

Declaration

public func captureValue(value: T, withIdentifier identifier: String)

— Apple Developer Site

When I call the function, all I get is this:

captureValue

How do I use captureValue? Or is this a bug in beta 3?

Richard Stelling
  • 25,607
  • 27
  • 108
  • 188

2 Answers2

5

captureValue() displays the value you capture in the Timeline, which is a separate view that shows up in a playground's Assistant Editor. (You can show the Assistant Editor by pressing Command-Option-Return.) What you're showing is the result of the current line, which, since captureValue() returns Void, is just the XCPlaygroundPage itself.

Here's what the Timeline should look like:

Playground Timeline

Nate Cook
  • 92,417
  • 32
  • 217
  • 178
4

However, if you want to have a nice plot in playground instead of a dump list, you'll need to assign CaptureValue in a loop.

for var i in 1...12 {
    XCPlaygroundPage.currentPage.captureValue(i*i*i, withIdentifier: "Cube")
}

Xcode 7.2

Playground with a nice cube plot from 1 to 12

james sa
  • 631
  • 5
  • 14