package bali;

/**
 * Parent class for exceptions generated while compiling a Bali program.
 */
public abstract class BaliException extends Exception {
    
    private int line = -1;
    
    /* Constructors */
    public BaliException () {}
    public BaliException (String message) {super(message);}
    public BaliException (int line) {this.line = line;}
    public BaliException (String message, int line) {super(message); this.line = line;}
    
    /* Retrieving information */
    public int getLine () {return line;}
    public String getMessage () {return super.getMessage();}
    public String toString () {
        return (line > -1) ? (getMessage() + ": line " + line) : getMessage();
    }
}
