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
-
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)