|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objecttgl.compiler.error.CompileErrorHandler
public class CompileErrorHandler
コンパイルエラーを処理するエラーハンドラを表す。 エラーを表すクラス XXX に対して、そのエラーを処理する caseXXX という 名前のメソッドが用意されている。それらのメソッドでは、tglc.cup で定義 されているメソッド report_fatal_error にエラーメッセージを渡す。 repot_fatal_error は、受け取ったエラーメッセージを表示してエラーを報告し、 構文解析器を停止させてから例外 ParseException を発生させる。
フィールドの概要 | |
---|---|
(package private) int |
col
|
(package private) java.lang.String |
filename
|
(package private) int |
line
|
(package private) Parser |
parser
|
コンストラクタの概要 | |
---|---|
CompileErrorHandler(java.lang.String name)
コンパイル時に発生するエラーのハンドラのオブジェクトを作成する。 |
メソッドの概要 | |
---|---|
(package private) void |
caseAlreadyAsProcError(AlreadyAsProcError e)
手続きとして宣言された識別子をグローバル変数として宣言したときに発生するエラーを報告する。 |
(package private) void |
caseAlreadyAsVarError(AlreadyAsVarError e)
グローバル変数として宣言された識別子を手続きとして宣言したときに発生するエラーを報告する。 |
(package private) void |
caseDeclaredAsCommError(DeclaredAsCommError e)
コマンドを関数として呼び出したときに発生するエラーを報告する。 |
(package private) void |
caseDeclaredAsFuncError(DeclaredAsFuncError e)
関数をコマンドとして呼び出したときに発生するエラーを報告する。 |
(package private) void |
caseDeclaredAsProcError(DeclaredAsProcError e)
手続きとして宣言された識別子を変数として使用したときに発生するエラーを報告する。 |
(package private) void |
caseDeclaredAsVarError(DeclaredAsVarError e)
変数として宣言された識別子を手続きとして使用したときに発生するエラーを報告する。 |
(package private) void |
caseIllegalCharError(IllegalCharError e)
字句解析器が不正な文字を読んだときに発生するエラーを報告する。 |
(package private) void |
caseNotReturnValueError(NotReturnValueError e)
関数の定義中に現れる return 文の戻り値が指定されていないときに発生するエラーを報告する。 |
(package private) void |
caseParamNumMismatchError(ParamNumMismatchError e)
手続き呼び出しの引数の個数が宣言と一致しないときに発生するエラーを報告する。 |
(package private) void |
caseProcDefDuplicationError(ProcDefDuplicationError e)
手続きを二重定義したときに発生するエラーを報告する。 |
(package private) void |
caseProcDuplicationError(ProcDuplicationError e)
手続きを二重宣言したときに発生するエラーを報告する。 |
(package private) void |
caseProcKindMismatchError(ProcKindMismatchError e)
手続きの宣言での種別と定義での種別が異なるときに発生するエラーを報告する。 |
(package private) void |
caseProcNotDeclaredError(ProcNotDeclaredError e)
宣言されていない手続きを呼び出したときに発生するエラーを報告する。 |
(package private) void |
caseProcNotDefinedError(ProcNotDefinedError e)
宣言済の手続きを定義していないときに発生するエラーを報告する。 |
(package private) void |
caseReturnValueError(ReturnValueError e)
コマンドの定義中に現れる return 文に戻り値が指定されているときに発生するエラーを報告する。 |
(package private) void |
caseSyntaxError(SyntaxError e)
構文解析エラーが発生するエラーを報告する。 |
(package private) void |
caseUnclosedCharError(UnclosedCharError e)
文字定数を閉じるクォートがないときに発生するエラーを報告する。 |
(package private) void |
caseVarDuplicationError(VarDuplicationError e)
変数を二重宣言したときに発生するエラーを報告する。 |
(package private) void |
caseVarNotDeclaredError(VarNotDeclaredError e)
宣言されていない変数を使用したときに発生するエラーを報告する。 |
void |
setParser(Parser obj)
構文解析器のインスタンスオブジェクトを保存する。 |
void |
setTokenLocation(int l,
int c)
エラーが起きる可能性のあるトークンの位置を保存する。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
Parser parser
int line
int col
java.lang.String filename
コンストラクタの詳細 |
---|
public CompileErrorHandler(java.lang.String name)
name
- コンパイルされる原始プログラムのファイル名メソッドの詳細 |
---|
public void setParser(Parser obj)
obj
- 構文解析器のインスタンスオブジェクトpublic void setTokenLocation(int l, int c)
l
- 行(最初の行を0とする)c
- 桁(最初の桁を0とする)void caseParamNumMismatchError(ParamNumMismatchError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseProcNotDefinedError(ProcNotDefinedError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseReturnValueError(ReturnValueError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseNotReturnValueError(NotReturnValueError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseAlreadyAsVarError(AlreadyAsVarError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseAlreadyAsProcError(AlreadyAsProcError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseVarDuplicationError(VarDuplicationError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseProcDuplicationError(ProcDuplicationError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseProcDefDuplicationError(ProcDefDuplicationError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseProcKindMismatchError(ProcKindMismatchError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseVarNotDeclaredError(VarNotDeclaredError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseProcNotDeclaredError(ProcNotDeclaredError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseDeclaredAsVarError(DeclaredAsVarError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseDeclaredAsProcError(DeclaredAsProcError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseDeclaredAsFuncError(DeclaredAsFuncError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseDeclaredAsCommError(DeclaredAsCommError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseSyntaxError(SyntaxError e) throws java.lang.Exception
e
- エラーを表すインスタンス
java.lang.Exception
void caseIllegalCharError(IllegalCharError e)
e
- エラーを表すインスタンスvoid caseUnclosedCharError(UnclosedCharError e)
e
- エラーを表すインスタンス
|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |