Package org.mozilla.javascript.ast
Class XmlRef
- java.lang.Object
- 
- org.mozilla.javascript.Node
- 
- org.mozilla.javascript.ast.AstNode
- 
- org.mozilla.javascript.ast.XmlRef
 
 
 
- 
- Direct Known Subclasses:
- XmlElemRef,- XmlPropRef
 
 public abstract class XmlRef extends AstNode Base class for E4X XML attribute-access or property-get expressions. Such expressions can take a variety of forms. The general syntax has three parts:- optional: an @(specifying an attribute access)
- optional: a namespace (a Name) and double-colon
- required: either a Nameor a bracketed [expression]
 ns::name,@name) are represented asXmlPropRefnodes. The bracketed-expression versions (examples:ns::[name],@[name]) becomeXmlElemRefnodes.This node type (or more specifically, its subclasses) will sometimes be the right-hand child of a PropertyGetnode or anXmlMemberGetnode. TheXmlRefnode may also be a standalone primary expression with no explicit target, which is valid in certain expression contexts such ascompany..employee.(@id < 100)- in this case, the@idis anXmlRefthat is part of an infix '<' expression whose parent is anXmlDotQuerynode.
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class org.mozilla.javascript.ast.AstNodeAstNode.DebugPrintVisitor, AstNode.PositionComparator
 - 
Nested classes/interfaces inherited from class org.mozilla.javascript.NodeNode.NodeIterator
 
- 
 - 
Field SummaryFields Modifier and Type Field Description protected intatPosprotected intcolonPosprotected Namenamespace- 
Fields inherited from class org.mozilla.javascript.ast.AstNodeinlineComment, length, parent, position
 - 
Fields inherited from class org.mozilla.javascript.NodeARROW_FUNCTION_PROP, ATTRIBUTE_FLAG, BOTH, CASEARRAY_PROP, CATCH_SCOPE_PROP, CONTROL_BLOCK_PROP, DECR_FLAG, DESCENDANTS_FLAG, DESTRUCTURING_ARRAY_LENGTH, DESTRUCTURING_NAMES, DESTRUCTURING_PARAMS, DIRECTCALL_PROP, END_DROPS_OFF, END_RETURNS, END_RETURNS_VALUE, END_UNREACHED, END_YIELDS, EXPRESSION_CLOSURE_PROP, first, FUNCTION_PROP, GENERATOR_END_PROP, INCRDECR_PROP, ISNUMBER_PROP, JSDOC_PROP, LABEL_ID_PROP, last, LAST_PROP, LEFT, lineno, LOCAL_BLOCK_PROP, LOCAL_PROP, MEMBER_TYPE_PROP, NAME_PROP, next, NON_SPECIALCALL, OBJECT_IDS_PROP, PARENTHESIZED_PROP, POST_FLAG, PROPERTY_FLAG, propListHead, REGEXP_PROP, RIGHT, SHORTHAND_PROPERTY_NAME, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, TARGETBLOCK_PROP, TEMPLATE_LITERAL_PROP, TRAILING_COMMA, type, VARIABLE_PROP
 
- 
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetAtPos()Returns position of@-token, or -1 if this is not an attribute-access expression.intgetColonPos()Returns position of::token, or -1 if not present.NamegetNamespace()Return the namespace.booleanisAttributeAccess()Returnstrueif this expression began with an@-token.voidsetAtPos(int atPos)Sets position of@-token, or -1voidsetColonPos(int colonPos)Sets position of::token, or -1 if not presentvoidsetNamespace(Name namespace)Sets namespace, and sets its parent to this node.- 
Methods inherited from class org.mozilla.javascript.ast.AstNodeaddChild, assertNotNull, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getInlineComment, getLength, getLineno, getParent, getPosition, hasSideEffects, makeIndent, operatorToString, printList, setBounds, setInlineComment, setLength, setParent, setPosition, setRelative, shortName, toSource, toSource, visit
 - 
Methods inherited from class org.mozilla.javascript.NodeaddChildAfter, addChildBefore, addChildrenToBack, addChildrenToFront, addChildToBack, addChildToFront, getBigInt, getChildBefore, getDouble, getExistingIntProp, getFirstChild, getIntProp, getJsDoc, getJsDocNode, getLastChild, getLastSibling, getNext, getProp, getScope, getString, getType, hasChildren, hasConsistentReturnUsage, iterator, labelId, labelId, newNumber, newString, newString, newTarget, putIntProp, putProp, removeChild, removeChildren, removeProp, replaceChild, replaceChildAfter, resetTargets, setBigInt, setDouble, setJsDocNode, setLineno, setScope, setString, setType, toString, toStringTree
 
- 
 
- 
- 
- 
Field Detail- 
namespaceprotected Name namespace 
 - 
atPosprotected int atPos 
 - 
colonPosprotected int colonPos 
 
- 
 - 
Method Detail- 
getNamespacepublic Name getNamespace() Return the namespace. May be@null.
 - 
setNamespacepublic void setNamespace(Name namespace) Sets namespace, and sets its parent to this node. Can benull.
 - 
isAttributeAccesspublic boolean isAttributeAccess() Returnstrueif this expression began with an@-token.
 - 
getAtPospublic int getAtPos() Returns position of@-token, or -1 if this is not an attribute-access expression.
 - 
setAtPospublic void setAtPos(int atPos) Sets position of@-token, or -1
 - 
getColonPospublic int getColonPos() Returns position of::token, or -1 if not present. It will only be present if the namespace node is non-null.
 - 
setColonPospublic void setColonPos(int colonPos) Sets position of::token, or -1 if not present
 
- 
 
-