Class ASTEnum

All Implemented Interfaces:
Serializable, Node, XMLSerializable

public class ASTEnum extends ASTScalar
Scalar node that represents constant enumeration value. It resolves actual value at a late stage to be parsable in environment where final Enum class is not known, i.e. in Modeler.
Since:
4.1
See Also:
  • Constructor Details

    • ASTEnum

      public ASTEnum()
    • ASTEnum

      public ASTEnum(Object value)
  • Method Details

    • evaluateNode

      protected Object evaluateNode(Object o)
      Description copied from class: SimpleNode
      Evaluates itself with object, pushing result on the stack.
      Overrides:
      evaluateNode in class ASTScalar
    • shallowCopy

      public Expression shallowCopy()
      Description copied from class: ASTScalar
      Creates a copy of this expression node, without copying children.
      Overrides:
      shallowCopy in class ASTScalar
    • appendAsEJBQL

      public void appendAsEJBQL(List<Object> parameterAccumulator, Appendable out, String rootId) throws IOException
      Description copied from class: Expression
      Stores a String representation of Expression as EJBQL using a provided PrintWriter. DB path expressions produce non-standard EJBQL path expressions. If the parameterAccumulator is supplied then as the EJBQL is output, it may load parameters into this list. In this case, the EJBQL output will contain reference to positional parameters. If no parameterAccumulator is supplied and a scalar type is encountered for which there is no EJBQL literal representation (such as dates) then this method will throw a runtime exception to indicate that it was not possible to generate a string-only representation of the Expression in EJBQL.
      Overrides:
      appendAsEJBQL in class ASTScalar
      Throws:
      IOException
    • getValue

      public Object getValue()
      Overrides:
      getValue in class ASTScalar
    • setEnumValue

      public void setEnumValue(String enumPath) throws ParseException
      Throws:
      ParseException