astnode.h Source File¶
|
NEDXML API
|
astnode.h
75 std::string str() const {return empty() ? "" : line == -1 ? file.str() : file.str() + ":" + std::to_string(line);}
181 void setSourceLocation(const char *fileName, int lineNumber) {setSourceLocation(FileLine(fileName,lineNumber));}
411 ASTNode *getFirstChildWithAttribute(int tagcode, const char *attr, const char *attrvalue=nullptr);
virtual ASTNode * createElementWithTag(int tagCode)=0
virtual ASTNode * createElementWithTag(const char *tagName)=0
Definition astnode.h:88
virtual void setId(long id)
virtual UserData * getUserData() const
virtual long getId() const
virtual void setAttribute(const char *attr, const char *value)
virtual int lookupAttribute(const char *attr) const
virtual ASTNode * getParent() const
virtual ASTNode * getFirstChild() const
virtual void applyDefaults()
ASTNode()
virtual const char * getAttributeDefault(int k) const =0
virtual void insertChildBefore(ASTNode *where, ASTNode *newnode)
virtual ~ASTNode()
virtual ASTNode * getNextSiblingWithTag(int tagcode) const
virtual const char * getTagName() const =0
virtual ASTNode * removeChild(ASTNode *node)
virtual void setSourceRegion(const SourceRegion ®ion)
virtual int getNumChildren() const
virtual void setAttribute(int k, const char *value)=0
virtual ASTNode * getFirstChildWithTag(int tagcode) const
virtual ASTNode * getNextSibling() const
virtual ASTNode * dupTree() const
virtual void appendChild(ASTNode *node)
virtual ASTNode * getPreviousSiblingWithTag(int tagcode) const
void setSourceLocation(const char *fileName, int lineNumber)
Definition astnode.h:181
virtual const char * getSourceFileName() const
ASTNode(ASTNode *parent)
virtual const SourceRegion & getSourceRegion() const
virtual ASTNode * getLastChild() const
virtual const char * getAttribute(const char *attr) const
virtual int getTagCode() const =0
virtual const char * getAttributeDefault(const char *attr) const
virtual void setUserData(UserData *data)
virtual ASTNode * getPrevSibling() const
ASTNode * getParentWithTag(int tagcode)
virtual int getNumAttributes() const =0
virtual const char * getAttributeName(int k) const =0
virtual void setSourceLocation(FileLine loc)
virtual int getSourceLineNumber() const
virtual const char * getAttribute(int k) const =0
virtual FileLine getSourceLocation() const
virtual ASTNode * dup() const =0
virtual const char * getSourceFileDirectory() const
ASTNode * getFirstChildWithAttribute(int tagcode, const char *attr, const char *attrvalue=nullptr)
virtual int getNumChildrenWithTag(int tagcode) const
Subclass from this if you want to attach extra data to ASTNode objects.
Definition astnode.h:43
Stores a line:col..line:col region in a source file. Used for mapping ASTNodes back to the source cod...
Definition astnode.h:60
Generated on for NEDXML API by