com.google.dart.compiler.backend.js.ast
Class JsNameRef
java.lang.Object
HasMetadata
com.google.dart.compiler.backend.js.ast.SourceInfoAwareJsNode
com.google.dart.compiler.backend.js.ast.JsNameRef
- All Implemented Interfaces:
- HasName, JsExpression, JsNode, HasSymbol
public final class JsNameRef
- extends SourceInfoAwareJsNode
- implements HasName
Represents a JavaScript expression that references a name.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
JsNameRef
public JsNameRef(@NotNull
JsName name)
JsNameRef
public JsNameRef(@NotNull
java.lang.String ident)
JsNameRef
public JsNameRef(@NotNull
java.lang.String ident,
JsExpression qualifier)
JsNameRef
public JsNameRef(@NotNull
java.lang.String ident,
@NotNull
java.lang.String qualifier)
JsNameRef
public JsNameRef(@NotNull
JsName name,
JsExpression qualifier)
getIdent
@NotNull
public java.lang.String getIdent()
getName
@Nullable
public JsName getName()
- Specified by:
getName
in interface HasName
getSymbol
@Nullable
public Symbol getSymbol()
- Specified by:
getSymbol
in interface HasSymbol
- Returns:
- Return the original user visible name for a Object represented
in a source map.
getQualifier
@Nullable
public JsExpression getQualifier()
isLeaf
public boolean isLeaf()
- Determines whether or not this expression is a leaf, such as a
JsNameRef
, JsLiteral.JsBooleanLiteral
, and so on. Leaf expressions
never need to be parenthesized.
- Specified by:
isLeaf
in interface JsExpression
resolve
public void resolve(JsName name)
setQualifier
public void setQualifier(JsExpression qualifier)
accept
public void accept(JsVisitor v)
- Description copied from interface:
JsNode
- Causes this object to have the visitor visit itself and its children.
- Specified by:
accept
in interface JsNode
- Parameters:
v
- the visitor that should traverse this node
acceptChildren
public void acceptChildren(JsVisitor visitor)
- Specified by:
acceptChildren
in interface JsNode
- Overrides:
acceptChildren
in class SourceInfoAwareJsNode
traverse
public void traverse(JsVisitorWithContext v,
JsContext ctx)
- Description copied from interface:
JsNode
- Causes this object to have the visitor visit itself and its children.
- Specified by:
traverse
in interface JsNode
- Parameters:
v
- the visitor that should traverse this nodectx
- the context of an existing traversal
deepCopy
@NotNull
public JsNameRef deepCopy()
- Specified by:
deepCopy
in interface JsExpression
- Specified by:
deepCopy
in interface JsNode
makeStmt
@NotNull
public JsStatement makeStmt()
- Specified by:
makeStmt
in interface JsExpression
source
public JsExpression source(java.lang.Object info)
- Specified by:
source
in interface JsExpression
- Specified by:
source
in interface JsNode
- Overrides:
source
in class SourceInfoAwareJsNode
toString
public java.lang.String toString()
withMetadataFrom
protected <T extends HasMetadata> T withMetadataFrom(T other)