com.google.dart.compiler.backend.js.ast
Class JsFunction
java.lang.Object
HasMetadata
com.google.dart.compiler.backend.js.ast.JsLiteral
com.google.dart.compiler.backend.js.ast.JsFunction
- All Implemented Interfaces:
- HasName, JsExpression, JsNode, HasSymbol
public final class JsFunction
- extends JsLiteral
- implements HasName
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
JsFunction
public JsFunction(@NotNull
JsScope parentScope,
@NotNull
java.lang.String description)
JsFunction
public JsFunction(@NotNull
JsScope parentScope,
@NotNull
JsBlock body,
@NotNull
java.lang.String description)
getBody
@NotNull
public JsBlock getBody()
getName
public JsName getName()
- Specified by:
getName in interface HasName
getSymbol
public Symbol getSymbol()
- Specified by:
getSymbol in interface HasSymbol
- Returns:
- Return the original user visible name for a Object represented
in a source map.
getParameters
@NotNull
public java.util.List<JsParameter> getParameters()
getScope
@NotNull
public JsFunctionScope getScope()
setBody
public void setBody(@NotNull
JsBlock body)
setName
public void setName(@Nullable
JsName name)
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
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 JsFunction deepCopy()
- Specified by:
deepCopy in interface JsExpression- Specified by:
deepCopy in interface JsNode
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
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
getSource
public java.lang.Object getSource()
- Description copied from interface:
JsNode
- Return the source info associated with this object.
setSource
public void setSource(java.lang.Object info)
- Description copied from interface:
JsNode
- Set the source info associated with this object.
toString
public java.lang.String toString()
withMetadataFrom
protected <T extends HasMetadata> T withMetadataFrom(T other)