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

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.JsLiteral
All Implemented Interfaces:
JsExpression, JsNode
Direct Known Subclasses:
JsArrayLiteral, JsFunction, JsLiteral.JsValueLiteral, JsObjectLiteral

public abstract class JsLiteral
extends SourceInfoAwareJsNode


Nested Class Summary
protected static class JsExpressionImpl.JsExpressionHasArguments
           
static class JsLiteral.JsBooleanLiteral
           
static class JsLiteral.JsThisRef
           
static class JsLiteral.JsValueLiteral
          A JavaScript string literal expression.
 
Field Summary
static JsLiteral.JsBooleanLiteral FALSE
           
static JsNullLiteral NULL
           
static JsLiteral.JsValueLiteral THIS
           
static JsLiteral.JsBooleanLiteral TRUE
           
static JsNameRef UNDEFINED
           
 
Constructor Summary
JsLiteral()
           
 
Method Summary
static JsLiteral.JsBooleanLiteral getBoolean(boolean truth)
           
 boolean isLeaf()
          Determines whether or not this expression is a leaf, such as a JsNameRef, JsLiteral.JsBooleanLiteral, and so on.
 JsStatement makeStmt()
           
 JsExpression source(java.lang.Object info)
           
 java.lang.String toString()
           
protected
<T extends HasMetadata>
T
withMetadataFrom(T other)
           
 
Methods inherited from class com.google.dart.compiler.backend.js.ast.SourceInfoAwareJsNode
acceptChildren, 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, acceptChildren, getSource, setSource, traverse
 

Field Detail

THIS

public static final JsLiteral.JsValueLiteral THIS

UNDEFINED

public static final JsNameRef UNDEFINED

NULL

public static final JsNullLiteral NULL

TRUE

public static final JsLiteral.JsBooleanLiteral TRUE

FALSE

public static final JsLiteral.JsBooleanLiteral FALSE
Constructor Detail

JsLiteral

public JsLiteral()
Method Detail

getBoolean

public static JsLiteral.JsBooleanLiteral getBoolean(boolean truth)

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)