|
XmlAnnotationNodeClasses.grm
|
// FILE. . . . . /home/hak/hlt/src/hlt/language/syntax/xml/XmlAnnotationNodeClasses.grm // EDIT BY . . . Hassan Ait-Kaci // ON MACHINE. . 4j4zn71 // STARTED ON. . Sat Apr 12 18:01:09 2008 // Last modified on Tue Jun 19 18:03:43 2012 by hak ////////////////////////////////////////////////////////////////////////
| A $WrapperPath_opt$ stores the sequence of wrappers making up a $WrapperPath$ in an ArrayList called wrapperPath. |
%nodeclass WrapperPath_opt { ArrayList wrapperPath = null; } %nodeclass WrapperPath extends WrapperPath_opt { // Set wrapperPath to a new list and add to it the XML wrapper // (the symbol and its distribution switch): void add (String s, boolean b) { (wrapperPath = new ArrayList()).add(new XmlWrapper(s,b)); } // Set wrapperPath to the specified path, and add to it the XML // wrapper (the symbol and its distribution switch): void addTo (ArrayList path, String s, boolean b) { (wrapperPath = path).add(new XmlWrapper(s,b)); } }
A $ChildXmlTree$ has the following fields:
|
%nodeclass ChildXmlTree { int cstChildPosition; IntArrayList xmlPath = null; boolean hasTerminalValueContent = false; ArrayList textInfo = null; }
A $XmlChildSpec$ is a $ChildXmlTree$ with
the following additional field:
|
%nodeclass XmlChildSpec extends ChildXmlTree { ArrayList wrapperPath = null; }
A $XmlTreeRef$ is a $XmlChildSpec$ with
the following additional field:
|
%nodeclass XmlTreeRef extends XmlChildSpec { String attributeName = null; } %nodeclass AttributeName_opt { String attributeName = null; } %nodeclass AttributeName extends AttributeName_opt { } ////////////////////////////////////////////////////////////////////////
| An $AttributeValue$ is a special case of $XmlTreeRef$. It has a flag hasLiteralValueContent indicating whether it carries a literal value; when this flag is true, then the literal value is in the value field. |
%nodeclass AttributeValue extends XmlTreeRef { boolean hasLiteralValueContent = false; String value = null; ArrayList textInfo = null; }
| An $XmlPath_opt$ stores the sequence of numbers making up a $XmlPath$ in an IntArrayList called xmlPath. |
%nodeclass XmlPath_opt { IntArrayList xmlPath = null; } %nodeclass XmlPath extends XmlPath_opt { // Set xmlPath to a new list and add to it the specififed number. void add (int n) { (xmlPath = new IntArrayList()).add(n); } // Set xmlPath to the specified path, and add to it the specififed // number. void addTo (IntArrayList path, int n) { (xmlPath = path).add(n); } } %nodeclass DotOrStar { boolean isStarred = false; } %nodeclass TextArgument { XmlTextInfoArg info = null; } %nodeclass TextRef extends TextArgument { } %nodeclass TextArguments { ArrayList textInfo = null; } %nodeclass SpecialForm extends TextArguments { boolean hasTerminalValueContent = false; } ////////////////////////////////////////////////////////////////////////
This file was generated on Tue Apr 30 07:44:49 CEST 2019 from file XmlAnnotationNodeClasses.grm
by the hlt.language.tools.Hilite Java tool written by Hassan Aït-Kaci