クラス OperationHandler<T extends Operator>

    • フィールドの詳細

      • templateMap

        protected Map<T extends Operator,​String> templateMap
        演算子に対するテンプレートのマップ マップの値ととなるテンプレートはMessageFormatの形式。
    • コンストラクタの詳細

      • OperationHandler

        public OperationHandler()
    • メソッドの詳細

      • init

        protected abstract void init()
        初期化処理
      • handle

        public abstract void handle​(T operator,
                                    Operation<?> expr,
                                    Visitor<VisitorContext> visitor,
                                    VisitorContext context)
        演算子に対する処理を行います。
        パラメータ:
        operator - 演算子
        expr - 演算子と非演算子を含む処理対象の式の情報
        visitor - Visitor
        context - このンテキスト
      • addTemplate

        public String addTemplate​(T op,
                                  String template)
        テンプレートを追加します。
        パラメータ:
        op - 演算子
        template - テンプレート(MessageFormatの形式。)
        戻り値:
        既に演算子に対するテンプレートが追加されている場合は、古いテンプレートの値を返します。
      • getTemplate

        public String getTemplate​(T op)
        演算子に対応するテンプレートを取得します。
        パラメータ:
        op - 演算子
        戻り値:
        対応するテンプレートが存在しない場合は、nullを返します。
      • formatWithTemplate

        public String formatWithTemplate​(T op,
                                         Object... args)
        テンプレートを使用してフォーマットします。
        パラメータ:
        op - 演算子
        args - 引数
        戻り値:
        フォーマットした値
      • isPropertyPath

        protected boolean isPropertyPath​(Expression<?> exp)
        式がプロパティパスかどうか判定します。
        パラメータ:
        exp - 式
        戻り値:
        プロパティパスの場合、trueを返します。
      • visitConstantWithPropertyPath

        protected void visitConstantWithPropertyPath​(Path<?> propertyPath,
                                                     Constant<?> expr,
                                                     VisitorContext context)
        プロパティが確定しているのとき定数の処理。
        パラメータ:
        propertyPath - プロパティパス
        expr - 定数
        context - コンテキスト
      • invoke

        protected void invoke​(Operator parentOperator,
                              Expression<?> expr,
                              Visitor<VisitorContext> visitor,
                              VisitorContext context)
        各処理に振り分ける
        パラメータ:
        parentOperator - 親ノードの演算子
        expr - 評価対象の式
        visitor - Visitor
        context - コンテキスト