// // Copyright (c) 2006, Brian Frank and Andy Frank // Licensed under the Academic Free License version 3.0 // // History: // 18 May 06 Brian Frank Creation // ** ** CompilerErr - instances should always be created via CompilerStep.err(). ** const class CompilerErr : Err { new make(Str msg, Loc? loc, Err? cause := null, LogLevel level := LogLevel.err) : super(msg, cause) { this.level = level if (loc != null) { this.file = loc.file this.line = loc.line this.col = loc.col } } Loc loc() { Loc(file, line, col) } Bool isErr() { level === LogLevel.err } Bool isWarn() { level === LogLevel.warn } const LogLevel level const Str? file const Int? line const Int? col }