Trace

dotty.tools.dotc.transform.init.Trace
opaque object Trace

Logic related to evaluation trace for showing friendly error messages

A trace is a sequence of program positions which tells the evaluation order that leads to an error. It is usually more informative than the stack trace by tracking the exact sub-expression in the trace instead of only methods.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Trace.type

Members list

Type members

Types

opaque type Trace

Value members

Concrete methods

def buildStacktrace(trace: Trace, preamble: String)(using Context): String
inline def extendTrace[T](node: Tree)(using t: Trace)(op: Trace ?=> T): T
def position(using trace: Trace): Tree
def show(using trace: Trace, ctx: Context): String
def trace(using t: Trace): Trace
inline def withTrace[T](t: Trace)(op: Trace ?=> T): T

Concrete fields

val empty: Trace

Extensions

Extensions

extension (trace: Trace)
def ++(trace2: Trace): Trace
def add(node: Tree): Trace