|
||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.ObjectTopLevelClass.LexicalAnalyzer
TopLevelClass.Default.LexicalAnalyzer
public static class TopLevelClass.Default.LexicalAnalyzer
デフォルトの TopLevelClass.LexicalAnalyzer
。
フィールドの概要 | |
---|---|
protected int |
column
次のトークンが始まるカラム番号(zero based)。 |
protected int |
end
text の字句解析の対象範囲の終端のインデックス(exclusive)。 |
protected int |
index
次のトークンが始まるインデックス(zero based)。 |
protected int |
line
次のトークンが始まる行番号(zero based)。 |
protected java.lang.String |
sourceName
コンストラクタで渡された sourceName 。 |
protected int |
tabStop
コンストラクタで渡された tabStop 。 |
protected java.lang.CharSequence |
text
コンストラクタで渡された text 。 |
コンストラクタの概要 | |
---|---|
TopLevelClass.Default.LexicalAnalyzer(java.lang.String sourceName,
java.lang.CharSequence text,
int tabStop)
字句解析器を構築します。 |
|
TopLevelClass.Default.LexicalAnalyzer(java.lang.String sourceName,
java.lang.CharSequence text,
int tabStop,
int start,
int end,
int line,
int column)
テキストの一部分を解析する字句解析器を構築します。 |
メソッドの概要 | |
---|---|
TopLevelClass.Token |
next()
シーケンスの次のトークンを返します。 |
protected char |
nextChar()
text 中の次の文字を返します。 |
protected char |
nextUnicodeEscapedChar()
ユニコード・エスケープをふまえて text 中の次の文字を返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
protected final java.lang.String sourceName
sourceName
。
protected final java.lang.CharSequence text
text
。
protected final int end
text
の字句解析の対象範囲の終端のインデックス(exclusive)。
protected final int tabStop
tabStop
。
protected int index
protected int line
protected int column
コンストラクタの詳細 |
---|
public TopLevelClass.Default.LexicalAnalyzer(java.lang.String sourceName,
java.lang.CharSequence text,
int tabStop)
sourceName
- 解析すべきテキストの名前。これは、TopLevelClass.Token.getSourceName()
の戻り値を設定するためだけに使用されます。text
- 解析すべきテキストtabStop
- テキスト中で、タブ文字に対して何文字ごとの位置に移動すべきか。これは、TopLevelClass.Token.getColumn()
の戻り値を設定するためだけに使用されます。
public TopLevelClass.Default.LexicalAnalyzer(java.lang.String sourceName,
java.lang.CharSequence text,
int tabStop,
int start,
int end,
int line,
int column)
sourceName
- 解析すべきテキストの名前。これは、TopLevelClass.Token.getSourceName()
の戻り値を設定するためだけに使用されます。text
- 解析すべきテキストtabStop
- テキスト中で、タブ文字に対して何文字ごとの位置に移動すべきか。これは、TopLevelClass.Token.getColumn()
の戻り値を設定するためだけに使用されます。start
- 解析対象の領域の開始位置(inclusive)。end
- 解析対象の領域の終了位置(exclusive)。line
- 開始位置の行番号(zero-based)。column
- 開始位置のカラム番号(zero-based)。メソッドの詳細 |
---|
public TopLevelClass.Token next() throws TopLevelClass.ParseException
TopLevelClass.LexicalAnalyzer
の記述:
もしトークンが無い場合、TopLevelClass.Token.getSymbolID()
が TopLevelClass.EOF_TOKEN
であるようなトークンを返します。この時の TopLevelClass.Token.getImage()
や TopLevelClass.Token.getIndex()
などの戻り値がどうなるかは規定されません。
TopLevelClass.LexicalAnalyzer
内の next
TopLevelClass.ParseException
protected char nextChar()
throws TopLevelClass.ParseException,
java.lang.IndexOutOfBoundsException
text
中の次の文字を返します。
このメソッドは、index
から始まる1文字を返します。このメソッドは index
、line
、column
を、次の文字をさすように更新しなければなりません。このメソッドは、ユニコード・エスケープのように、文字列を文字として扱いたい場合にオーバーライドされます。
java.lang.IndexOutOfBoundsException
- index >= end
の場合。
TopLevelClass.ParseException
protected final char nextUnicodeEscapedChar()
throws TopLevelClass.ParseException,
java.lang.IndexOutOfBoundsException
text
中の次の文字を返します。
TopLevelClass.ParseException
- 無効なユニコード・エスケープが存在した場合。
java.lang.IndexOutOfBoundsException
- index >= end
の場合。
|
||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |