content: /* Generated By:JJTree: Do not edit this line. ExpNamedParameter.java Version 7.0 */
  /* JavaCCOptions:MULTI=true,NODE_USES_PARSER=false,VISITOR=true,TRACK_TOKENS=false,NODE_PREFIX=Exp,NODE_EXTENDS=,NODE_FACTORY=,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */
  package io.agrest.exp.parser;
  
  import io.agrest.exp.AgExpressionException;
  
  public
  class ExpNamedParameter extends SimpleNode {
    public ExpNamedParameter(int id) {
      super(id);
    }
  
    public ExpNamedParameter(AgExpressionParser p, int id) {
      super(p, id);
    }
  
    public ExpNamedParameter() {
      super(AgExpressionParserTreeConstants.JJTNAMEDPARAMETER);
    }
  
    public String getName() {
      return (String) jjtGetValue();
    }
  
    /** Accept the visitor. **/
    public <T> T jjtAccept(AgExpressionParserVisitor<T> visitor, T data) {
  
      return
      visitor.visit(this, data);
    }
  
    @Override
    public void jjtSetValue(Object value) {
      if (value == null) {
        throw new AgExpressionException("Null Parameter value");
      }
  
      String name = value.toString().trim();
      if (name.length() == 0) {
        throw new AgExpressionException("Empty Parameter value");
      }
  
      super.jjtSetValue(name);
    }
  
    @Override
    protected SimpleNode shallowCopy() {
      ExpNamedParameter copy = new ExpNamedParameter(id);
      copy.value = value;
      return copy;
    }
  
    @Override
    public String toString() {
      return ExpStringConverter.convert(this);
    }
  }
  /* JavaCC - OriginalChecksum=7b4e7b4225063fe3b24686d5b6a2ada2 (do not edit this line) */
  