public abstract class XmlRef extends AstNode
@Name) and double-colonName or a bracketed [expression]ns::name, @name)
 are represented as XmlPropRef nodes.  The bracketed-expression
 versions (examples:  ns::[name], @[name]) become
 XmlElemRef nodes.
 This node type (or more specifically, its subclasses) will
 sometimes be the right-hand child of a PropertyGet node or
 an XmlMemberGet node.  The XmlRef node may also
 be a standalone primary expression with no explicit target, which
 is valid in certain expression contexts such as
 company..employee.(@id < 100) - in this case, the @id
 is an XmlRef that is part of an infix '<' expression
 whose parent is an XmlDotQuery node.
AstNode.DebugPrintVisitor, AstNode.PositionComparatorNode.NodeIterator| Modifier and Type | Field and Description | 
|---|---|
| protected int | atPos | 
| protected int | colonPos | 
| protected Name | namespace | 
ARROW_FUNCTION_PROP, ATTRIBUTE_FLAG, BOTH, CASEARRAY_PROP, CATCH_SCOPE_PROP, CONTROL_BLOCK_PROP, DECR_FLAG, DESCENDANTS_FLAG, DESTRUCTURING_ARRAY_LENGTH, DESTRUCTURING_NAMES, DESTRUCTURING_PARAMS, DESTRUCTURING_SHORTHAND, 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, SKIP_INDEXES_PROP, SPECIALCALL_EVAL, SPECIALCALL_PROP, SPECIALCALL_WITH, TARGETBLOCK_PROP, type, VARIABLE_PROP| Constructor and Description | 
|---|
| XmlRef() | 
| XmlRef(int pos) | 
| XmlRef(int pos,
      int len) | 
| Modifier and Type | Method and Description | 
|---|---|
| int | getAtPos()Returns position of  @-token, or -1 if this is not
 an attribute-access expression. | 
| int | getColonPos()Returns position of  ::token, or -1 if not present. | 
| Name | getNamespace()Return the namespace. | 
| boolean | isAttributeAccess()Returns  trueif this expression began with an@-token. | 
| void | setAtPos(int atPos)Sets position of  @-token, or -1 | 
| void | setColonPos(int colonPos)Sets position of  ::token, or -1 if not present | 
| void | setNamespace(Name namespace)Sets namespace, and sets its parent to this node. | 
addChild, assertNotNull, codeBug, compareTo, debugPrint, depth, getAbsolutePosition, getAstRoot, getEnclosingFunction, getEnclosingScope, getLength, getLineno, getParent, getPosition, hasSideEffects, makeIndent, operatorToString, printList, setBounds, setLength, setParent, setPosition, setRelative, shortName, toSource, toSource, visitaddChildAfter, addChildBefore, addChildrenToBack, addChildrenToFront, addChildToBack, addChildToFront, 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, setDouble, setJsDocNode, setLineno, setScope, setString, setType, toString, toStringTreeprotected Name namespace
protected int atPos
protected int colonPos
public XmlRef()
public XmlRef(int pos)
public XmlRef(int pos,
              int len)
public Name getNamespace()
@null.public void setNamespace(Name namespace)
null.public boolean isAttributeAccess()
true if this expression began with an @-token.public int getAtPos()
@-token, or -1 if this is not
 an attribute-access expression.public void setAtPos(int atPos)
@-token, or -1public int getColonPos()
:: token, or -1 if not present.
 It will only be present if the namespace node is non-null.public void setColonPos(int colonPos)
:: token, or -1 if not present