|
||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface Replace
構文解析木置換インターフェース.
AbstractExpression#replace()が呼ばれた際、構文解析木のそれぞれの条件に応じた当インターフェースのメソッドが呼ばれる。
各メソッドでは、構文解析木を置換する場合は新しい構文解析木を返し、置換しない場合は引数をそのまま返す必要がある。
メソッドの概要 | |
---|---|
AbstractExpression |
replace0(WordExpression exp)
識別子置換 |
AbstractExpression |
replace1(Col1Expression exp)
単項演算子置換 |
AbstractExpression |
replace2(Col2Expression exp)
二項演算子置換 加減算などの単純な二項演算子のとき呼ばれる。 |
AbstractExpression |
replace2(Col2OpeExpression exp)
二項演算子(特殊)置換 and,or,カンマなどの単純でない二項演算子のとき呼ばれる。 |
AbstractExpression |
replace3(Col3Expression exp)
三項演算子置換 |
AbstractExpression |
replaceFunc(FunctionExpression exp)
関数置換 |
AbstractExpression |
replaceLet(Col2Expression exp)
代入演算子置換 |
AbstractExpression |
replaceVar0(WordExpression exp)
識別子置換(左辺値として使用される場合) |
AbstractExpression |
replaceVar1(Col1Expression exp)
単項演算子置換(左辺値として使用される場合) |
AbstractExpression |
replaceVar2(Col2Expression exp)
二項演算子置換(左辺値として使用される場合) |
AbstractExpression |
replaceVar2(Col2OpeExpression exp)
二項演算子置換(左辺値として使用される場合) |
AbstractExpression |
replaceVar3(Col3Expression exp)
三項演算子置換(左辺値として使用される場合) |
メソッドの詳細 |
---|
AbstractExpression replace0(WordExpression exp)
exp
-
AbstractExpression replace1(Col1Expression exp)
exp
-
AbstractExpression replace2(Col2Expression exp)
加減算などの単純な二項演算子のとき呼ばれる。
exp
-
AbstractExpression replace2(Col2OpeExpression exp)
and,or,カンマなどの単純でない二項演算子のとき呼ばれる。
exp
-
AbstractExpression replace3(Col3Expression exp)
exp
-
AbstractExpression replaceVar0(WordExpression exp)
exp
-
AbstractExpression replaceVar1(Col1Expression exp)
exp
-
AbstractExpression replaceVar2(Col2Expression exp)
exp
-
AbstractExpression replaceVar2(Col2OpeExpression exp)
exp
-
AbstractExpression replaceVar3(Col3Expression exp)
exp
-
AbstractExpression replaceFunc(FunctionExpression exp)
exp
-
AbstractExpression replaceLet(Col2Expression exp)
exp
-
|
||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |