com.google.dart.compiler.backend.js.ast
Class JsUnaryOperation

java.lang.Object
  extended by HasMetadata
      extended by com.google.dart.compiler.backend.js.ast.SourceInfoAwareJsNode
          extended by com.google.dart.compiler.backend.js.ast.JsUnaryOperation
All Implemented Interfaces:
JsExpression, JsNode
Direct Known Subclasses:
JsPostfixOperation, JsPrefixOperation

public abstract class JsUnaryOperation
extends SourceInfoAwareJsNode


Nested Class Summary
protected static class JsExpressionImpl.JsExpressionHasArguments
           
 
Constructor Summary
JsUnaryOperation(JsUnaryOperator op, JsExpression arg)
           
 
Method Summary
 void acceptChildren(JsVisitor visitor)
           
 JsExpression getArg()
           
 JsUnaryOperator getOperator()
           
 boolean isLeaf()
          Determines whether or not this expression is a leaf, such as a JsNameRef, JsLiteral.JsBooleanLiteral, and so on.
 JsStatement makeStmt()
           
 void setArg(JsExpression arg)
           
 JsExpression source(java.lang.Object info)
           
 java.lang.String toString()
           
 void traverse(JsVisitorWithContext v, JsContext ctx)
          Causes this object to have the visitor visit itself and its children.
protected
<T extends HasMetadata>
T
withMetadataFrom(T other)
           
 
Methods inherited from class com.google.dart.compiler.backend.js.ast.SourceInfoAwareJsNode
getSource, setSource
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.google.dart.compiler.backend.js.ast.JsExpression
deepCopy
 
Methods inherited from interface com.google.dart.compiler.backend.js.ast.JsNode
accept, getSource, setSource
 

Constructor Detail

JsUnaryOperation

public JsUnaryOperation(JsUnaryOperator op,
                        JsExpression arg)
Method Detail

getArg

public JsExpression getArg()

getOperator

public JsUnaryOperator getOperator()

setArg

public void setArg(JsExpression arg)

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.

Parameters:
v - the visitor that should traverse this node
ctx - the context of an existing traversal

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
Overrides:
source in class SourceInfoAwareJsNode

toString

public java.lang.String toString()

withMetadataFrom

protected <T extends HasMetadata> T withMetadataFrom(T other)