/** * Open parenthesis definition. * * @return Open parenthesis definition rule. */ public Rule openParenthesis() { return Sequence(ZeroOrMore(whitespace()), "(", ZeroOrMore(whitespace())); }
/** * Comma definition. * * @return Comma definition rule. */ public Rule comma() { return Sequence(ZeroOrMore(whitespace()), ",", ZeroOrMore(whitespace())); }
/** * Open parenthesis definition. * * @return Open parenthesis definition rule. */ public Rule openParenthesis() { return Sequence(ZeroOrMore(whitespace()), "(", ZeroOrMore(whitespace())); }
/** * Open bracket definition. * * @return Open bracket definition rule. */ public Rule openBracket() { return Sequence(ZeroOrMore(whitespace()), "[", ZeroOrMore(whitespace())); }
/** * Closed parenthesis definition. * * @return Closed parenthesis definition rule. */ public Rule closedParenthesis() { return Sequence(ZeroOrMore(whitespace()), ")", ZeroOrMore(whitespace())); }
/** * Closed bracket definition. * * @return Closed bracket definition rule. */ public Rule closedBracket() { return Sequence(ZeroOrMore(whitespace()), "]", ZeroOrMore(whitespace())); }
/** * Identifier definition which does not push match to value stack. * * @return Identifier definition rule. */ public Rule identifierWithNoPush() { return Sequence(letter(), ZeroOrMore(letterOrDigit())); }
/** * Identifier definition which does not push match to value stack. * * @return Identifier definition rule. */ public Rule identifierWithNoPush() { return Sequence(letter(), ZeroOrMore(letterOrDigit())); }
/** * Naked string definition. * * @return Naked string definition rule. */ public Rule nakedStringLiteral() { return Sequence(TestNot(AnyOf("\r\n\"'\\")), ZeroOrMore(ANY), push(match())); }
/** * Naked string definition. * * @return Naked string definition rule. */ public Rule nakedStringLiteral() { return Sequence(TestNot(AnyOf("\r\n\"'\\")), ZeroOrMore(ANY), push(match())); }
/** * Identifier definition. * * @return Identifier definition rule. */ public Rule identifier() { return Sequence(Sequence(letter(), ZeroOrMore(letterOrDigit())), push(match())); }
/** * Identifier definition. * * @return Identifier definition rule. */ public Rule identifier() { return Sequence(Sequence(letter(), ZeroOrMore(letterOrDigit())), push(match())); }
/** * List of items. * * @param rule Rule of a list item. * @return List definition rule. */ protected Rule list(Rule rule) { return Sequence(Sequence(push("args"), Optional(rule, ZeroOrMore(comma(), rule))), push(getItemsUpToDelimiter("args"))); }
/** * Value reference definition. * * @return Value reference definition rule. */ public Rule valueReference() { return Sequence('$', Sequence(Sequence(identifierWithNoPush(), ZeroOrMore('.', identifierWithNoPush())), push(getValueProxy(match())))); }
/** * Value reference definition. * * @return Value reference definition rule. */ public Rule valueReference() { return Sequence('$', Sequence(Sequence(identifierWithNoPush(), ZeroOrMore('.', identifierWithNoPush())), push(getValueProxy(match())))); }
/** * Single quote string definition. * * @return Single quote string definition rule. */ public Rule singleQuoteStringLiteral() { return Sequence(Sequence("'", ZeroOrMore(FirstOf(escape(), Sequence(TestNot(AnyOf("\r\n'\\")), ANY))), "'"), push(trimOffEnds(match()))); }
/** * Double quote string definition. * * @return Double quote string definition rule. */ public Rule doubleQuoteStringLiteral() { return Sequence(Sequence('"', ZeroOrMore(FirstOf(escape(), Sequence(TestNot(AnyOf("\r\n\"\\")), ANY))), '"'), push(trimOffEnds(match()))); }
/** * Double quote string definition. * * @return Double quote string definition rule. */ public Rule doubleQuoteStringLiteral() { return Sequence(Sequence('"', ZeroOrMore(FirstOf(escape(), Sequence(TestNot(AnyOf("\r\n\"\\")), ANY))), '"'), push(trimOffEnds(match()))); }
/** * String transformer definition. * * @return String transformer definition rule. */ public Rule stringTransformer() { return Sequence(Sequence("string", openParenthesis(), stringLiteral(), push(STRING_VALUE_DELIMITER), ZeroOrMore(comma(), value()), closedParenthesis()), push(getStringValue())); }
/** * String transformer definition. * * @return String transformer definition rule. */ public Rule stringTransformer() { return Sequence(Sequence("string", openParenthesis(), stringLiteral(), push(STRING_VALUE_DELIMITER), ZeroOrMore(comma(), value()), closedParenthesis()), push(getStringValue())); }