SplitScript reference / Debug / debugString

Debug.debugString

Method

Self.debugString() -> String where Self: Debug

Converts the receiver to its unambiguous structural representation.

User structs, enums, and managed class snapshots receive a recursive derived implementation when this method is absent. Defining an exact method with this signature overrides that representation without changing the user-facing Display.toString method.

Effects: pure

Runtime behavior: available everywhere; synchronous

Examples

Customize nested diagnostics

state "example.exe" {}

struct Checkpoint {
    name: String,
}

fn Checkpoint.debugString() -> String {
    return `Checkpoint({self.name})`
}