logo
class

compiler::CompilerLog

sys::Obj
  compiler::CompilerLog

CompilerLog manages logging compiler messages. The default writes everything to standard output.

Slots

compilerErr

virtual Void compilerErr(CompilerErr err)

Log a CompilerErr

error

Void error(Str msg, Str aux := def, Err err := def)

Convenience for log(LogLevel.error, msg, aux, err)

indent

Void indent()

Indent the output.

indentation

Int indentation

Current level of indentation

isVerbose

Bool isVerbose()

Is level configured to log verbosely

level

LogLevel level

Max severity of log entries to report

log

virtual Void log(LogLevel level, Str msg, Str aux := def, Err err := def)

Generate a log entry. The log entry is only generated if the specified level is greater than or equal to the configured level field. The msg indicates the message to report. Aux is used to separate extra information, by convention it is typically the target of msg such as the file name. Err is used to report the associated exception.

make

new make(OutStream out := def)

Construct for specified output stream.

message

Void message(Str msg, Str aux := def, Err err := def)

Convenience for log(LogLevel.message, msg, aux, err)

out

OutStream out

Sink for all output

print

CompilerLog print(Obj s)

Print a string without trailing newline.

printLine

CompilerLog printLine(Obj s := def)

Print a line.

unindent

Void unindent()

Unindent the output.

verbose

Void verbose(Str msg, Str aux := def, Err err := def)

Convenience for log(LogLevel.verbose, msg, aux, err)

warning

Void warning(Str msg, Str aux := def, Err err := def)

Convenience for log(LogLevel.warning, msg, aux, err)