Snapshots

org.scalactic.Snapshots
See theSnapshots companion object
trait Snapshots

Trait that provides a snap method that takes one or more arguments and results in a SnapshotSeq, whose toString lists the names and values of each argument.

The intended use case of this trait is to help you write debug and log messages that give a "snapshot" of program state. Here's an example:

scala> import Snapshots._
import Snapshots._

scala> snap(a, b, c, d, e, f)
res3: org.scalactic.SnapshotSeq = a was 1, b was 2, c was 3, d was 4, e was null, f was null

SnapshotSeq offers a lines method that places each variable name/value pair on its own line:

scala> snap(a, b, c, d, e, f).lines
res4: String =
a was 1
b was 2
c was 3
d was 4
e was null
f was null

Or, because a SnapshotSeq is a IndexedSeq[Snapshot], you can process it just like any other Seq, for example:

scala> snap(a, b, c, d, e, f).mkString("Wow! ", ", and ", ". That's so awesome!")
res6: String = Wow! a was 1, and b was 2, and c was 3, and d was 4, and e was null, and f was null. That's so awesome!

Attributes

Companion
object
Source
Snapshots.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Snapshots.type

Members list

Value members

Concrete methods

inline def snap(expressions: Any*): SnapshotSeq

Snap the given expressions.

Snap the given expressions.

Value parameters

expressions

expressions to be snapped

Attributes

Returns

an IndexedSeq of Snapshot for the given expressions.

Source
Snapshots.scala