TraceSyntax

dotty.tools.dotc.reporting.TraceSyntax
trait TraceSyntax

This module is carefully optimized to give zero overhead if Config.tracingEnabled is false. The trace operation is called in various hotspots, so every tiny bit of overhead is unacceptable: boxing, closures, additional method calls are all out.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object force
object log
object trace

Members list

Value members

Abstract methods

inline def isEnabled: Boolean

Concrete methods

inline def apply[T, U >: T](inline question: String, inline printer: Printer, inline showOp: U => String)(inline op: T)(using Context): T
inline def apply[T](inline question: String, inline printer: Printer, inline show: Boolean)(inline op: T)(using Context): T
inline def apply[T](inline question: String, inline printer: Printer)(inline op: T)(using Context): T
inline def apply[T](inline question: String, inline show: Boolean)(inline op: T)(using Context): T
inline def apply[T](inline question: String)(inline op: T)(using Context): T
inline def conditionally[TC](inline cond: Boolean, inline question: String, inline show: Boolean)(inline op: TC)(using Context): TC
inline def onDebug[TD](inline question: String)(inline op: TD)(using Context): TD

Abstract fields

protected val isForced: Boolean