org.seasar.doma.internal.expr
クラス ExpressionEvaluator

java.lang.Object
  上位を拡張 org.seasar.doma.internal.expr.ExpressionEvaluator
すべての実装されたインタフェース:
ExpressionNodeVisitor<EvaluationResult,Void>

public class ExpressionEvaluator
extends Object
implements ExpressionNodeVisitor<EvaluationResult,Void>

作成者:
taedium

入れ子のクラスの概要
protected static class ExpressionEvaluator.Decimal
           
 
フィールドの概要
protected  Map<String,Object> variableValues
           
 
コンストラクタの概要
ExpressionEvaluator()
           
ExpressionEvaluator(Map<String,? extends Object> variableValues)
           
 
メソッドの概要
 void add(String varialbeName, Object value)
           
protected  int compare(ComparisonOperatorNode node, Object left, Object right)
           
 EvaluationResult evaluate(ExpressionNode node)
           
protected  Constructor<?> findConstructor(ExpressionLocation location, Class<?> clazz, Class<?>... paramTypes)
           
protected  Method findMethod(ExpressionLocation location, String methodName, Object target, Class<?>[] paramTypes)
           
protected  Class<?> forClassName(ExpressionLocation location, String className)
           
protected  Object getEnclosedValueIfDomain(Object maybeDomain)
           
protected  EvaluationResult invokeConstructor(ExpressionLocation location, Class<?> clazz, Constructor<?> constructor, Object... params)
           
protected  EvaluationResult invokeMethod(ExpressionLocation location, Method method, Object target, Class<?>[] paramTypes, Object[] params)
           
 EvaluationResult visitAddOperatorNode(AddOperatorNode node, Void p)
           
 EvaluationResult visitAndOperatorNode(AndOperatorNode node, Void p)
           
 EvaluationResult visitCommaOperatorNode(CommaOperatorNode node, Void p)
           
 EvaluationResult visitDivideOperatorNode(DivideOperatorNode node, Void p)
           
 EvaluationResult visitEmptyNode(EmptyNode node, Void p)
           
 EvaluationResult visitEqOperatorNode(EqOperatorNode node, Void p)
           
 EvaluationResult visitGeOperatorNode(GeOperatorNode node, Void p)
           
 EvaluationResult visitGtOperatorNode(GtOperatorNode node, Void p)
           
 EvaluationResult visitLeOperatorNode(LeOperatorNode node, Void p)
           
 EvaluationResult visitLiteralNode(LiteralNode node, Void p)
           
 EvaluationResult visitLtOperatorNode(LtOperatorNode node, Void p)
           
 EvaluationResult visitMethodOperatorNode(MethodOperatorNode node, Void p)
           
 EvaluationResult visitMultiplyOperatorNode(MultiplyOperatorNode node, Void p)
           
 EvaluationResult visitNeOperatorNode(NeOperatorNode node, Void p)
           
 EvaluationResult visitNewOperatorNode(NewOperatorNode node, Void p)
           
 EvaluationResult visitNotOperatorNode(NotOperatorNode node, Void p)
           
 EvaluationResult visitOrOperatorNode(OrOperatorNode node, Void p)
           
 EvaluationResult visitParensNode(ParensNode node, Void p)
           
 EvaluationResult visitSubtractOperatorNode(SubtractOperatorNode node, Void p)
           
 EvaluationResult visitVariableNode(VariableNode node, Void p)
           
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

variableValues

protected final Map<String,Object> variableValues
コンストラクタの詳細

ExpressionEvaluator

public ExpressionEvaluator()

ExpressionEvaluator

public ExpressionEvaluator(Map<String,? extends Object> variableValues)
メソッドの詳細

add

public void add(String varialbeName,
                Object value)

evaluate

public EvaluationResult evaluate(ExpressionNode node)

visitEqOperatorNode

public EvaluationResult visitEqOperatorNode(EqOperatorNode node,
                                            Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitEqOperatorNode

visitNeOperatorNode

public EvaluationResult visitNeOperatorNode(NeOperatorNode node,
                                            Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitNeOperatorNode

visitGeOperatorNode

public EvaluationResult visitGeOperatorNode(GeOperatorNode node,
                                            Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitGeOperatorNode

visitGtOperatorNode

public EvaluationResult visitGtOperatorNode(GtOperatorNode node,
                                            Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitGtOperatorNode

visitLeOperatorNode

public EvaluationResult visitLeOperatorNode(LeOperatorNode node,
                                            Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitLeOperatorNode

visitLtOperatorNode

public EvaluationResult visitLtOperatorNode(LtOperatorNode node,
                                            Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitLtOperatorNode

getEnclosedValueIfDomain

protected Object getEnclosedValueIfDomain(Object maybeDomain)

compare

protected int compare(ComparisonOperatorNode node,
                      Object left,
                      Object right)
               throws ClassCastException
例外:
ClassCastException

visitAndOperatorNode

public EvaluationResult visitAndOperatorNode(AndOperatorNode node,
                                             Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitAndOperatorNode

visitOrOperatorNode

public EvaluationResult visitOrOperatorNode(OrOperatorNode node,
                                            Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitOrOperatorNode

visitNotOperatorNode

public EvaluationResult visitNotOperatorNode(NotOperatorNode node,
                                             Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitNotOperatorNode

visitAddOperatorNode

public EvaluationResult visitAddOperatorNode(AddOperatorNode node,
                                             Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitAddOperatorNode

visitSubtractOperatorNode

public EvaluationResult visitSubtractOperatorNode(SubtractOperatorNode node,
                                                  Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitSubtractOperatorNode

visitMultiplyOperatorNode

public EvaluationResult visitMultiplyOperatorNode(MultiplyOperatorNode node,
                                                  Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitMultiplyOperatorNode

visitDivideOperatorNode

public EvaluationResult visitDivideOperatorNode(DivideOperatorNode node,
                                                Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitDivideOperatorNode

visitLiteralNode

public EvaluationResult visitLiteralNode(LiteralNode node,
                                         Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitLiteralNode

visitParensNode

public EvaluationResult visitParensNode(ParensNode node,
                                        Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitParensNode

visitNewOperatorNode

public EvaluationResult visitNewOperatorNode(NewOperatorNode node,
                                             Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitNewOperatorNode

forClassName

protected Class<?> forClassName(ExpressionLocation location,
                                String className)

findConstructor

protected Constructor<?> findConstructor(ExpressionLocation location,
                                         Class<?> clazz,
                                         Class<?>... paramTypes)

invokeConstructor

protected EvaluationResult invokeConstructor(ExpressionLocation location,
                                             Class<?> clazz,
                                             Constructor<?> constructor,
                                             Object... params)

visitMethodOperatorNode

public EvaluationResult visitMethodOperatorNode(MethodOperatorNode node,
                                                Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitMethodOperatorNode

invokeMethod

protected EvaluationResult invokeMethod(ExpressionLocation location,
                                        Method method,
                                        Object target,
                                        Class<?>[] paramTypes,
                                        Object[] params)

findMethod

protected Method findMethod(ExpressionLocation location,
                            String methodName,
                            Object target,
                            Class<?>[] paramTypes)

visitVariableNode

public EvaluationResult visitVariableNode(VariableNode node,
                                          Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitVariableNode

visitCommaOperatorNode

public EvaluationResult visitCommaOperatorNode(CommaOperatorNode node,
                                               Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitCommaOperatorNode

visitEmptyNode

public EvaluationResult visitEmptyNode(EmptyNode node,
                                       Void p)
定義:
インタフェース ExpressionNodeVisitor<EvaluationResult,Void> 内の visitEmptyNode


Copyright © 2009 The Seasar Foundation. All Rights Reserved.