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

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.JsBinaryOperation
All Implemented Interfaces:
JsExpression, JsNode

public final class JsBinaryOperation
extends SourceInfoAwareJsNode


Nested Class Summary
protected static class JsExpressionImpl.JsExpressionHasArguments
           
 
Constructor Summary
JsBinaryOperation(JsBinaryOperator op, JsExpression arg1, JsExpression arg2)
           
 
Method Summary
 void accept(JsVisitor v)
          Causes this object to have the visitor visit itself and its children.
 void acceptChildren(JsVisitor visitor)
           
 JsExpression deepCopy()
           
 JsExpression getArg1()
           
 JsExpression getArg2()
           
 JsBinaryOperator getOperator()
           
 boolean isLeaf()
          Determines whether or not this expression is a leaf, such as a JsNameRef, JsLiteral.JsBooleanLiteral, and so on.
 JsStatement makeStmt()
           
 void setArg1(JsExpression arg1)
           
 void setArg2(JsExpression arg2)
           
 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.JsNode
getSource, setSource
 

Constructor Detail

JsBinaryOperation

public JsBinaryOperation(@NotNull
                         JsBinaryOperator op,
                         @Nullable
                         JsExpression arg1,
                         @Nullable
                         JsExpression arg2)
Method Detail

getArg1

public JsExpression getArg1()

getArg2

public JsExpression getArg2()

setArg1

public void setArg1(JsExpression arg1)

setArg2

public void setArg2(JsExpression arg2)

getOperator

@NotNull
public JsBinaryOperator getOperator()

accept

public void accept(JsVisitor v)
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

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

deepCopy

@NotNull
public JsExpression deepCopy()

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)