| java.lang.Object com.google.gwt.dev.js.ast.JsVisitor com.google.gwt.dev.js.JsFirstExpressionVisitor
JsFirstExpressionVisitor | public class JsFirstExpressionVisitor extends JsVisitor (Code) | | Determines if an expression statement needs to be surrounded by parentheses.
The statement or the left-most expression needs to be surrounded by
parentheses if the left-most expression is an object literal or a function
object. Function declarations do not need parentheses.
For example the following require parentheses:
- { key : 'value'}
- { key : 'value'}.key
- function () {return 1;}()
- function () {return 1;}.prototype
The following do not require parentheses:
- var x = { key : 'value'}
- "string" + { key : 'value'}.key
- function func() {}
- function() {}
|
Method Summary | |
public static boolean | exec(JsExprStmt statement) | public boolean | visit(JsArrayAccess x, JsContext<JsExpression> ctx) | public boolean | visit(JsArrayLiteral x, JsContext<JsExpression> ctx) | public boolean | visit(JsBinaryOperation x, JsContext<JsExpression> ctx) | public boolean | visit(JsConditional x, JsContext<JsExpression> ctx) | public boolean | visit(JsFunction x, JsContext<JsExpression> ctx) | public boolean | visit(JsInvocation x, JsContext<JsExpression> ctx) | public boolean | visit(JsNameRef x, JsContext<JsExpression> ctx) | public boolean | visit(JsNew x, JsContext<JsExpression> ctx) | public boolean | visit(JsObjectLiteral x, JsContext<JsExpression> ctx) | public boolean | visit(JsPostfixOperation x, JsContext<JsExpression> ctx) | public boolean | visit(JsPrefixOperation x, JsContext<JsExpression> ctx) | public boolean | visit(JsRegExp x, JsContext<JsExpression> ctx) |
Fields inherited from com.google.gwt.dev.js.ast.JsVisitor | final protected static JsContext UNMODIFIABLE_CONTEXT(Code)(Java Doc)
|
Methods inherited from com.google.gwt.dev.js.ast.JsVisitor | final public T accept(T node)(Code)(Java Doc) final public void acceptList(List<T> collection)(Code)(Java Doc) final public void acceptWithInsertRemove(List<T> collection)(Code)(Java Doc) public boolean didChange()(Code)(Java Doc) protected T doAccept(T node)(Code)(Java Doc) protected void doAcceptList(List<T> collection)(Code)(Java Doc) protected void doAcceptWithInsertRemove(List<T> collection)(Code)(Java Doc) final protected void doTraverse(T node, JsContext<T> ctx)(Code)(Java Doc) public void endVisit(JsArrayAccess x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsArrayLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsBinaryOperation x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsBlock x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsBooleanLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsBreak x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsCase x, JsContext<JsSwitchMember> ctx)(Code)(Java Doc) public void endVisit(JsCatch x, JsContext<JsCatch> ctx)(Code)(Java Doc) public void endVisit(JsConditional x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsContinue x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsDebugger x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsDecimalLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsDefault x, JsContext<JsSwitchMember> ctx)(Code)(Java Doc) public void endVisit(JsDoWhile x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsEmpty x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsExprStmt x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsFor x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsForIn x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsFunction x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsIf x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsIntegralLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsInvocation x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsLabel x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsNameRef x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsNew x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsNullLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsObjectLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsParameter x, JsContext<JsParameter> ctx)(Code)(Java Doc) public void endVisit(JsPostfixOperation x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsPrefixOperation x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsProgram x, JsContext<JsProgram> ctx)(Code)(Java Doc) public void endVisit(JsPropertyInitializer x, JsContext<JsPropertyInitializer> ctx)(Code)(Java Doc) public void endVisit(JsRegExp x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsReturn x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsStringLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsSwitch x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsThisRef x, JsContext<JsExpression> ctx)(Code)(Java Doc) public void endVisit(JsThrow x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsTry x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsVar x, JsContext<JsVar> ctx)(Code)(Java Doc) public void endVisit(JsVars x, JsContext<JsStatement> ctx)(Code)(Java Doc) public void endVisit(JsWhile x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsArrayAccess x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsArrayLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsBinaryOperation x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsBlock x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsBooleanLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsBreak x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsCase x, JsContext<JsSwitchMember> ctx)(Code)(Java Doc) public boolean visit(JsCatch x, JsContext<JsCatch> ctx)(Code)(Java Doc) public boolean visit(JsConditional x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsContinue x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsDebugger x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsDecimalLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsDefault x, JsContext<JsSwitchMember> ctx)(Code)(Java Doc) public boolean visit(JsDoWhile x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsEmpty x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsExprStmt x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsFor x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsForIn x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsFunction x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsIf x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsIntegralLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsInvocation x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsLabel x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsNameRef x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsNew x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsNullLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsObjectLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsParameter x, JsContext<JsParameter> ctx)(Code)(Java Doc) public boolean visit(JsPostfixOperation x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsPrefixOperation x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsProgram x, JsContext<JsProgram> ctx)(Code)(Java Doc) public boolean visit(JsPropertyInitializer x, JsContext<JsPropertyInitializer> ctx)(Code)(Java Doc) public boolean visit(JsRegExp x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsReturn x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsStringLiteral x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsSwitch x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsThisRef x, JsContext<JsExpression> ctx)(Code)(Java Doc) public boolean visit(JsThrow x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsTry x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsVar x, JsContext<JsVar> ctx)(Code)(Java Doc) public boolean visit(JsVars x, JsContext<JsStatement> ctx)(Code)(Java Doc) public boolean visit(JsWhile x, JsContext<JsStatement> ctx)(Code)(Java Doc)
|
|
|