/* Generated By:JJTree: Do not edit this line. Statement.java Version 4.3 */ /* JavaCCOptions:MULTI=true,NODE_USES_PARSER=true,VISITOR=true,TRACK_TOKENS=false,NODE_PREFIX=,NODE_EXTENDS=,NODE_FACTORY=,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ package org.teiid.query.sql.proc; import org.teiid.designer.query.sql.proc.IStatement; import org.teiid.designer.runtime.version.spi.ITeiidServerVersion; import org.teiid.query.parser.LanguageVisitor; import org.teiid.query.sql.lang.SimpleNode; /** * */ public abstract class Statement extends SimpleNode implements IStatement<LanguageVisitor> { /** * Types of statement */ public enum StatementType { /** * Represents an unknown type of statement */ TYPE_UNKNOWN, /** * Represents a IF statement */ TYPE_IF, /** * Represents a SQL COMMAND statement */ TYPE_COMMAND, /** * Represents a DECLARE statement */ TYPE_DECLARE, /** * Represents a ERROR statement */ TYPE_ERROR, /** * Represents a ASSIGNMENT statement */ TYPE_ASSIGNMENT, /** * Represents a LOOP statement */ TYPE_LOOP, /** * Represents a WHILE statement */ TYPE_WHILE, /** * Represents a CONTINUE statement */ TYPE_CONTINUE, /** * Represents a BREAK statement */ TYPE_BREAK, /** * Represents a UPDATE statement */ TYPE_UPDATE, /** * Represents a COMPOUND statement */ TYPE_COMPOUND, /** * Represents a LEAVE statement */ TYPE_LEAVE, /** * Represents a RETURN statement */ TYPE_RETURN; } /** * @param p * @param id */ public Statement(ITeiidServerVersion p, int id) { super(p, id); } /** * Return type of statement to make it easier to build switch statements by statement type. * @return Type from TYPE constants */ public abstract StatementType getType(); /** * Deep clone statement to produce a new identical statement. * @return Deep clone */ @Override public abstract Statement clone(); /** Accept the visitor. **/ @Override public void acceptVisitor(LanguageVisitor visitor) { visitor.visit(this); } } /* JavaCC - OriginalChecksum=f7567f59a5c45e144164cfa33217c65a (do not edit this line) */