/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.11">JLS section 14.11</a> */ public Rule caseStatement() { return Sequence( String("case"), group.basics.testLexBreak(), group.basics.optWS(), group.expressions.anyExpression(), set(), Ch(':'), group.basics.optWS(), set(actions.createCaseStatement(value()))); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.6">JLS section 14.6</a> */ Rule emptyStatement() { return Sequence( Ch(';'), group.basics.optWS(), set(actions.createEmptyStatement())); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.11">JLS section 14.11</a> */ public Rule switchStatement() { return Sequence( String("switch"), group.basics.testLexBreak(), group.basics.optWS(), Ch('('), group.basics.optWS(), group.expressions.anyExpression(), set(), Ch(')'), group.basics.optWS(), blockStatement(), set(actions.createSwitchStatement(value(), lastValue()))); }
Rule unqualifiedConstructorInvocation() { return Sequence( String("new"), group.basics.testLexBreak(), group.basics.optWS(), group.types.typeArguments().label("constructorTypeArgs"), group.types.type().label("type"), group.structures.methodArguments().label("args"), Optional(group.structures.typeBody()).label("classBody"), set(actions.createUnqualifiedConstructorInvocation(value("constructorTypeArgs"), value("type"), value("args"), value("classBody")))); }
public Rule explicitAlternateConstructorInvocation() { return Sequence( group.types.typeArguments().label("typeArgs"), String("this"), group.basics.testLexBreak(), group.basics.optWS(), group.structures.methodArguments().label("arguments"), Ch(';'), group.basics.optWS(), set(actions.createAlternateConstructorInvocation(value("typeArgs"), value("arguments")))); }
Rule methodInvocationWithTypeArgsOperation() { return Sequence( Ch('.').label("dot"), group.basics.optWS(), group.types.typeArguments().label("typeArguments"), group.basics.identifier().label("name"), group.structures.methodArguments().label("methodArguments"), set(actions.createMethodInvocationOperation(node("dot"), value("typeArguments"), value("name"), value("methodArguments")))); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#3.10.3">JLS section 3.10.3</a> */ public Rule booleanLiteral() { return Sequence( Sequence( FirstOf(String("true"), String("false")), group.basics.testLexBreak()), set(actions.createBooleanLiteral(lastText())), group.basics.optWS()); }
Rule arrayAccessOperation() { return Sequence( Ch('['), group.basics.optWS(), anyExpression(), set(), Ch(']'), group.basics.optWS(), set(actions.createArrayAccessOperation(value()))); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#3.10.7">JLS section 3.10.7</a> */ public Rule nullLiteral() { return Sequence( Sequence( String("null"), group.basics.testLexBreak()), set(actions.createNullLiteral(lastText())), group.basics.optWS()); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#3.10.5">JLS section 3.10.5</a> */ public Rule stringLiteral() { return Sequence( stringLiteralRaw(), set(actions.createStringLiteral(lastText())), group.basics.optWS()); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#4.2">JLS section 4.2</a> */ public Rule primitiveType() { return Sequence( rawPrimitiveType(), set(actions.createPrimitiveType(lastText())), group.basics.optWS()); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.11">JLS section 14.11</a> */ public Rule switchStatement() { return Sequence( String("switch"), group.basics.testLexBreak(), group.basics.optWS(), Ch('('), group.basics.optWS(), group.expressions.anyExpression(), set(), Ch(')'), group.basics.optWS(), blockStatement(), set(actions.createSwitchStatement(value(), lastValue()))); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.11">JLS section 14.11</a> */ public Rule caseStatement() { return Sequence( String("case"), group.basics.testLexBreak(), group.basics.optWS(), group.expressions.anyExpression(), set(), Ch(':'), group.basics.optWS(), set(actions.createCaseStatement(value()))); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#3.10.3">JLS section 3.10.3</a> */ public Rule booleanLiteral() { return Sequence( Sequence( FirstOf(String("true"), String("false")), group.basics.testLexBreak()), set(actions.createBooleanLiteral(lastText())), group.basics.optWS()); }
Rule arrayAccessOperation() { return Sequence( Ch('['), group.basics.optWS(), anyExpression(), set(), Ch(']'), group.basics.optWS(), set(actions.createArrayAccessOperation(value()))); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.11">JLS section 14.11</a> */ public Rule switchStatement() { return Sequence( String("switch"), group.basics.testLexBreak(), group.basics.optWS(), Ch('('), group.basics.optWS(), group.expressions.anyExpression(), set(), Ch(')'), group.basics.optWS(), blockStatement(), set(actions.createSwitchStatement(value(), lastValue()))); }
/** * @see <a href="http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.11">JLS section 14.11</a> */ public Rule caseStatement() { return Sequence( String("case"), group.basics.testLexBreak(), group.basics.optWS(), group.expressions.anyExpression(), set(), Ch(':'), group.basics.optWS(), set(actions.createCaseStatement(value()))); }