jp.hishidama.eval.rule
クラス AbstractRule

java.lang.Object
  上位を拡張 jp.hishidama.eval.rule.AbstractRule
直系の既知のサブクラス:
Col1AfterRule, Col1BeforeRule, Col2RightJoinRule, Col2Rule, Col3Rule, PrimaryRule

public abstract class AbstractRule
extends Object

ルール抽象クラス.

演算子の種類毎の優先順位を表し、構文解析を実際に行うクラス。

バージョン:
2007.02.16
作成者:
ひしだま

フィールドの概要
 AbstractRule nextRule
          次の優先順位のルール.
 int prio
          優先順位.
 
コンストラクタの概要
AbstractRule(ShareRuleValue share)
           
 
メソッドの概要
 void addExpression(AbstractExpression exp)
          演算子登録.
 void addLexOperator(String ope)
          解釈対象演算子追加.
 void addOperator(String ope, AbstractExpression exp)
          演算子追加.
 String[] getOperators()
          演算子一覧取得.
 void initPriority(int prio)
          優先順位初期化.
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

nextRule

public AbstractRule nextRule
次の優先順位のルール.


prio

public int prio
優先順位.

コンストラクタの詳細

AbstractRule

public AbstractRule(ShareRuleValue share)
メソッドの詳細

addExpression

public final void addExpression(AbstractExpression exp)
演算子登録.

自分のルールに属する演算子を追加する。初期化用。
併せて、その演算子の式クラスの初期化を行う。

パラメータ:
exp - 式インスタンス(演算子文字列保持用)

addOperator

public final void addOperator(String ope,
                              AbstractExpression exp)
演算子追加.

自分のルールに属する演算子を追加する。初期化用。

パラメータ:
ope - 演算子
exp - ダミー演算子インスタンス

getOperators

public final String[] getOperators()
演算子一覧取得.

戻り値:
全演算子
導入されたバージョン:
2007.02.16

addLexOperator

public final void addLexOperator(String ope)
解釈対象演算子追加.

演算子と解釈する文字列を追加する。初期処理でのみ使用。
ここで作成したopeListはLexで使用する。

パラメータ:
ope - 演算子
導入されたバージョン:
2007.02.16
関連項目:
Lex.isOperator(int)

initPriority

public final void initPriority(int prio)
優先順位初期化.

パラメータ:
prio - 優先順位
導入されたバージョン:
2006.10.27