Package-level declarations

Types

Link copied to clipboard
sealed interface Node<T>
Link copied to clipboard
class Step<T>(val id: String, block: suspend Step.State.() -> T, val parent: Steps<*>) : Node<T>
Link copied to clipboard
class Steps<T>(val id: String, block: suspend Steps<T>.() -> T, val parent: Steps<*>?) : Node<T>

Properties

Link copied to clipboard

Debug

Link copied to clipboard
val Steps<*>.nextNode: Node<*>?
Link copied to clipboard
Link copied to clipboard
var println: (x: Any) -> Unit
Link copied to clipboard
val Steps<*>.root: Steps<*>
Link copied to clipboard

Functions

Link copied to clipboard

Undo step

Link copied to clipboard
suspend fun <T> Steps<*>.branch(id: String = defaultID(), block: suspend Steps<*>.() -> T): T

Undoable branch

Link copied to clipboard

Step default ID

Link copied to clipboard
infix fun Steps<*>.isDescendantOf(other: Steps<*>): Boolean
Link copied to clipboard
infix fun Steps<*>.isNotDescendantOf(other: Steps<*>): Boolean
Link copied to clipboard
fun <T> main(block: suspend Steps<*>.() -> T): T

Undoable entrypoint

Link copied to clipboard
suspend fun <T> Steps<*>.step(id: String = defaultID(), block: suspend Step.State.() -> T): T

Undoable step