17 #ifdef ANTLR_CXX_SUPPORTS_NAMESPACE
30 virtual const char* typeName(
void )
const = 0;
32 virtual RefAST clone(
void )
const = 0;
34 virtual bool equals(
RefAST t)
const = 0;
38 virtual bool equalsList(
RefAST t)
const = 0;
42 virtual bool equalsListPartial(
RefAST t)
const = 0;
46 virtual bool equalsTree(
RefAST t)
const = 0;
50 virtual bool equalsTreePartial(
RefAST t)
const = 0;
65 virtual
void addChild(
RefAST c) = 0;
67 virtual
size_t getNumberOfChildren() const = 0;
70 virtual
RefAST getFirstChild() const = 0;
72 virtual
RefAST getNextSibling() const = 0;
77 virtual
int getType() const = 0;
83 virtual
void initialize(
RefAST t) = 0;
84 virtual
void initialize(
RefToken t) = 0;
86 #ifdef ANTLR_SUPPORT_XML
94 virtual void setFirstChild(
RefAST c) = 0;
96 virtual void setNextSibling(
RefAST n) = 0;
101 virtual void setType(
int type) = 0;
110 #ifdef ANTLR_SUPPORT_XML
142 #ifdef ANTLR_SUPPORT_XML
145 ast->toStream(output);
153 #ifdef NEEDS_OPERATOR_LESS_THAN
158 return nullAST == l ? (
nullAST == r ?
false : true ) : l->getType() < r->getType();
162 #ifdef ANTLR_CXX_SUPPORTS_NAMESPACE
166 #endif //INC_AST_hpp__