Package | Description |
---|---|
jfun.parsec |
Provides classes and interfaces for parser combinator logic and basic parsers.
|
Modifier and Type | Method and Description |
---|---|
static Parser<Tok> |
Lexers.allInteger()
Deprecated.
Use
Lexers.lexLong() . |
static Parser<Tok> |
Lexers.allInteger(java.lang.String name)
Deprecated.
|
static <T> Parser<T> |
Parsers.alt(Parser<T>... alternatives)
To create a Parser that runs an array of Parser objects
until one succeeds.
|
static <T> Parser<T> |
Parsers.alt(java.lang.String name,
Parser<T>... alternatives)
To create a Parser that runs an array of Parser objects
until one succeeds.
|
static Parser<_> |
Scanners.among(char[] chars)
succeed and consume the current character if it equals to one of the given characters.
|
static Parser<_> |
Scanners.among(char[] chars,
java.lang.String err)
succeed and consume the current character if it equals to one of the given characters.
|
static Parser<_> |
Scanners.among(java.lang.String name,
char[] chars)
succeed and consume the current character if it equals to one of the given characters.
|
static Parser<_> |
Scanners.among(java.lang.String name,
char[] chars,
java.lang.String err)
succeed and consume the current character if it equals to one of the given characters.
|
<T,R> Parser<R> |
Parser.and(Parser<T> p,
Map2<? super Type,? super T,R> m)
it sequentially run this and p, and then transforms the two return values with m to a new return value.
|
<T,R> Parser<R> |
Parser.and(java.lang.String name,
Parser<T> p,
Map2<? super Type,? super T,R> m)
it sequentially run this and p, and then transforms the two return values with m to a new return value.
|
static Parser<_> |
Scanners.anyChar()
matches any character in the input.
|
static Parser<_> |
Scanners.anyChar(java.lang.String err)
matches any character in the input.
|
static Parser<_> |
Scanners.anyChar(java.lang.String name,
java.lang.String err)
matches any character in the input.
|
static Parser<Tok> |
Parsers.anyToken()
Consumes a token.
|
static Parser<Tok> |
Parsers.anyToken(java.lang.String name)
Consumes a token.
|
Parser<Type> |
Parser.atomize()
Make sure 'this' is atomic.
|
Parser<Type> |
Parser.atomize(java.lang.String name)
Make sure 'this' is atomic.
|
static <R> Parser<R> |
Parsers.atomize(java.lang.String name,
Parser<R> p)
Backout input consumption if p fails.
|
static <R> Parser<R> |
Parsers.between(Parser<?> open,
Parser<?> close,
Parser<R> p)
Runs a Parser that is between a pair of parsers.
|
static <R> Parser<R> |
Parsers.between(java.lang.String name,
Parser<?> open,
Parser<?> close,
Parser<R> p)
runs a Parser that is between a pair of parsers.
|
static <From,To> Parser<To> |
Parsers.bind(java.lang.String name,
Parser<From> p,
ToParser<? super From,To> f)
First run p, if it succeeds, run ToParser f with the value returned from p.
|
<To> Parser<To> |
Parser.bind(java.lang.String name,
ToParser<? super Type,To> tp)
if this parser succeeds, the returned value gets passed on to tp.
|
<To> Parser<To> |
Parser.bind(ToParser<? super Type,To> tp)
if this parser succeeds, the returned value gets passed on to tp.
|
static <E,T extends E> |
Expressions.buildExpressionParser(Parser<T> term,
OperatorTable<E> table)
Creates a Parser object based on information described by OperatorTable.
|
static <E,T extends E> |
Expressions.buildExpressionParser(java.lang.String name,
Parser<T> term,
OperatorTable<E> table)
Creates a Parser object based on information described by OperatorTable.
|
<R extends Type> |
Parser.cast()
To cast the current Parser to a Parser object that returns a subtype of the current type.
|
<R extends Type> |
Parser.cast(java.lang.Class<R> type)
To cast the current Parser to a Parser object that returns a subtype of the current type.
|
Parser<T> |
Catch.catchException(java.lang.Object v,
java.lang.Object e)
in case of a pseudo-exception e happens, user can specify what Parser to use.
|
Parser<T> |
Catch1.catchException(java.lang.Object v,
java.lang.Object e)
if e is the same as the target object that this Catch object is expecting,
it recovers the parser and make v the current return value.
|
static Parser<Tok> |
Lexers.charLiteral()
returns the lexer that's gonna parse single quoted character literal (escaped by '\'),
and then converts the character to a Character.
|
static Parser<Tok> |
Lexers.charLiteral(java.lang.String name)
returns the lexer that's gonna parse single quoted character literal (escaped by '\'),
and then converts the character to a Character.
|
static <R> Parser<R> |
Terms.charParser(FromChar<R> fc)
gets a Parser object to parse Character token.
|
static <R> Parser<R> |
Terms.charParser(java.lang.String name,
FromChar<R> fc)
gets a Parser object to parse Character token.
|
<R> Parser<R> |
Parser.convert()
To convert the current Parser to a Parser object that returns any target type.
|
<R> Parser<R> |
Parser.convert(java.lang.Class<R> type)
To convert the current Parser to a Parser object that returns any target type.
|
static Parser<Tok> |
Lexers.decimal()
returns the lexer that's gonna parse a decimal number (valid patterns are: 1, 2.3, 000, 0., .23),
and convert the string to a decimal typed token.
|
static Parser<Tok> |
Lexers.decimal(java.lang.String name)
returns the lexer that's gonna parse a decimal number (valid patterns are: 1, 2.3, 000, 0., .23),
and convert the string to a decimal typed token.
|
static <R> Parser<R> |
Terms.decimalParser(FromString<R> fc)
gets a Parser object to parse TokenDecimal.
|
static <R> Parser<R> |
Terms.decimalParser(java.lang.String name,
FromString<R> fc)
gets a Parser object to parse TokenDecimal.
|
static Parser<Tok> |
Lexers.decInteger()
Deprecated.
Use
Lexers.lexDecLong() . |
static Parser<Tok> |
Lexers.decInteger(java.lang.String name)
Deprecated.
|
static <R> Parser<R> |
Scanners.delimited(Parser<R> s)
If a string is not followed by a alphanumeric character, it is well-delimited.
|
static <R> Parser<R> |
Scanners.delimited(Parser<R> s,
java.lang.String err)
If a string is not followed by a alphanumeric character, it is well-delimited.
|
static <R> Parser<R> |
Scanners.delimited(java.lang.String name,
Parser<R> s)
If a string is not followed by a alphanumeric character, it is well-delimited.
|
static <R> Parser<R> |
Scanners.delimited(java.lang.String name,
Parser<R> s,
java.lang.String err)
If a string is not followed by a alphanumeric character, it is well-delimited.
|
static <R> Parser<R[]> |
Parsers.endBy(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy1(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy1(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<?> |
Parsers.eof()
Asserts eof is met.
|
static Parser<?> |
Parsers.eof(java.lang.String msg)
Asserts eof is met.
|
static Parser<?> |
Parsers.eof(java.lang.String name,
java.lang.String msg)
Asserts eof is met.
|
Parser<R> |
ParserEval.eval()
do the evaluation.
|
static <x> Parser<x> |
Parsers.expect(java.lang.String lbl)
Create a Parser object that reports a "something expected" error.
|
static <x> Parser<x> |
Parsers.expect(java.lang.String name,
java.lang.String lbl)
Create a Parser object that reports a "something expected" error.
|
static <R> Parser<R> |
Parsers.fail(java.lang.String msg)
A parser that always fail with the given error message.
|
static <R> Parser<R> |
Parsers.fail(java.lang.String name,
java.lang.String msg)
A parser that always fail with the given error message.
|
Parser<Type> |
Parser.followedBy(Parser<?> sep)
'this' and 'sep' are executed sequentially.
|
Parser<Type> |
Parser.followedBy(java.lang.String name,
Parser<?> sep)
'this' and 'sep' are executed sequentially.
|
static <R> Parser<R> |
Parsers.followedBy(java.lang.String name,
Parser<?> sep,
Parser<R> p)
First run Parser p, then run Parser sep.
|
static Parser<java.lang.Integer> |
Parsers.getIndex()
Retrieves the current index in the source.
|
static Parser<java.lang.Integer> |
Parsers.getIndex(java.lang.String name)
Retrieves the current index in the source.
|
Parser<Tok> |
Terms.getLexer()
gets the lexer for the terminals.
|
Parser<Tok> |
Words.getLexer()
gets the lexer object.
|
Parser |
ParsingFrame.getParser()
Get the Parser object executed.
|
Parser<Tok> |
Terms.getParser(java.lang.String... tnames)
gets the parser for the terminals identified by tnames.
|
Parser<Tok> |
Terms.getParser(java.lang.String tname)
gets the parser for a terminal identified by tname.
|
Parser<Tok> |
Terms.getParser(java.lang.String[] tnames,
java.lang.String expected)
gets the parser for the terminals identified by tnames.
|
Parser<Tok> |
Terms.getParser(java.lang.String tname,
java.lang.String expected)
gets the parser for a terminal identified by tname.
|
Parser<Tok> |
Terms.getParser(java.lang.String name,
java.lang.String[] tnames)
gets the parser for the terminals identified by tnames.
|
Parser<Tok> |
Terms.getParser(java.lang.String name,
java.lang.String[] tnames,
java.lang.String expected)
gets the parser for the terminals identified by tnames.
|
Parser<Tok> |
Terms.getParser(java.lang.String name,
java.lang.String tname,
java.lang.String expected)
gets the parser for a terminal identified by tname.
|
static Parser<java.lang.Object> |
Parsers.getState()
Deprecated.
as of version 0.6
|
static Parser<java.lang.Object> |
Parsers.getState(java.lang.String name)
Deprecated.
|
static Parser<_> |
Scanners.haskellBlockComment()
scanner for haskell style block comment.
|
static Parser<_> |
Scanners.haskellDelimiter()
the haskell style delimiter of tokens.
|
static Parser<_> |
Scanners.haskellDelimiter(java.lang.String name)
the haskell style delimiter of tokens.
|
static Parser<_> |
Scanners.haskellLineComment()
scanner for haskell style line comment.
|
static Parser<Tok> |
Lexers.hexInteger()
Deprecated.
Use
Lexers.lexHexLong() . |
static Parser<Tok> |
Lexers.hexInteger(java.lang.String name)
Deprecated.
|
<R> Parser |
Parser.ifelse(Parser<R> yes,
Parser<? extends R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
static <C,R> Parser<R> |
Parsers.ifelse(java.lang.String name,
Parser<C> p,
Parser<R> yes,
Parser<? extends R> no)
First run Parser p, if it succeeds, run Parser yes; if it fails and no
input is consumed, run Parser no; fails if p fails and some input is
consumed.
|
static <C,R> Parser<R> |
Parsers.ifelse(java.lang.String name,
Parser<C> p,
ToParser<? super C,R> yes,
Parser<? extends R> no)
First run Parser p, if it succeeds, thread the return value to ToParser
yes; if it fails and no input is consumed, run Parser no; fails if p fails
and some input is consumed.
|
<R> Parser<R> |
Parser.ifelse(java.lang.String name,
Parser<R> yes,
Parser<R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
<R> Parser<R> |
Parser.ifelse(java.lang.String name,
ToParser<? super Type,R> yes,
Parser<R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
<R> Parser<R> |
Parser.ifelse(ToParser<? super Type,R> yes,
Parser<R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
static <T> Parser<T> |
Parsers.infixl(Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Left associative infix operator.
|
static <T> Parser<T> |
Parsers.infixl(java.lang.String name,
Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Left associative infix operator.
|
static <T> Parser<T> |
Parsers.infixn(Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> operand)
Non-associative infix operator.
|
static <T> Parser<T> |
Parsers.infixn(java.lang.String name,
Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> operand)
Non-associative infix operator.
|
static <T> Parser<T> |
Parsers.infixr(Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Right associative infix operator.
|
static <T> Parser<T> |
Parsers.infixr(java.lang.String name,
Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Right associative infix operator.
|
static Parser<Tok> |
Lexers.integer()
returns the lexer that's gonna parse a integer number (valid patterns are: 0, 00, 1, 10),
and convert the string to an integer typed token.
|
static Parser<Tok> |
Lexers.integer(java.lang.String name)
returns the lexer that's gonna parse a integer number (valid patterns are: 0, 00, 1, 10),
and convert the string to an integer typed token.
|
static <R> Parser<R> |
Terms.integerParser(FromLong<R> fc)
gets a Parser object to parse Long token.
|
static <R> Parser<R> |
Terms.integerParser(FromString<R> fs)
gets a Parser object to parse token of arbitrary length integer.
|
static <R> Parser<R> |
Terms.integerParser(java.lang.String name,
FromLong<R> fc)
gets a Parser object to parse Long token.
|
static <R> Parser<R> |
Terms.integerParser(java.lang.String name,
FromString<R> fs)
gets a Parser object to parse token of arbitrary length integer.
|
static Parser<_> |
Scanners.isBlockComment(Parser<_> open,
Parser<_> close,
Parser<?> commented)
Scans a non-nestable block comment.
|
static Parser<_> |
Scanners.isBlockComment(java.lang.String name,
Parser<_> open,
Parser<_> close,
Parser<?> commented)
Scans a non-nestable block comment.
|
static Parser<_> |
Scanners.isBlockComment(java.lang.String start,
java.lang.String end)
scanner for non-nested block comment.
|
static Parser<_> |
Scanners.isBlockComment(java.lang.String open,
java.lang.String close,
Pattern commented)
Scans a non-nestable block comment.
|
static Parser<_> |
Scanners.isBlockComment(java.lang.String name,
java.lang.String start,
java.lang.String end)
scanner for non-nested block comment.
|
static Parser<_> |
Scanners.isChar(char ch)
succeed and consume the current character if it is equal to ch.
|
static Parser<_> |
Scanners.isChar(CharPredicate cp)
succeed and consume the current character if it satisfies the given CharPredicate.
|
static Parser<_> |
Scanners.isChar(CharPredicate cp,
java.lang.String err)
succeed and consume the current character if it satisfies the given CharPredicate.
|
static Parser<_> |
Scanners.isChar(char ch,
java.lang.String err)
succeed and consume the current character if it is equal to ch.
|
static Parser<_> |
Scanners.isChar(java.lang.String name,
char ch)
succeed and consume the current character if it is equal to ch.
|
static Parser<_> |
Scanners.isChar(java.lang.String name,
CharPredicate cp)
succeed and consume the current character if it satisfies the given CharPredicate.
|
static Parser<_> |
Scanners.isChar(java.lang.String name,
CharPredicate cp,
java.lang.String err)
succeed and consume the current character if it satisfies the given CharPredicate.
|
static Parser<_> |
Scanners.isChar(java.lang.String name,
char ch,
java.lang.String err)
succeed and consume the current character if it is equal to ch.
|
static <R> Parser<R> |
Parsers.isConsumed(Parser<R> p)
First run the Parser p, if it succeeds with input consumed, isConsumed()
succeeds; if it fails or did not consume input, isConsumed() fails.
|
static <R> Parser<R> |
Parsers.isConsumed(Parser<R> p,
java.lang.String err)
First run the Parser p, if it succeeds with input consumed, isConsumed()
succeeds; if it fails or did not consume input, isConsumed() fails.
|
static <R> Parser<R> |
Parsers.isConsumed(java.lang.String name,
Parser<R> p)
First run the Parser p, if it succeeds with input consumed, isConsumed()
succeeds; if it fails or did not consume input, isConsumed() fails.
|
static <R> Parser<R> |
Parsers.isConsumed(java.lang.String name,
Parser<R> p,
java.lang.String err)
First run the Parser p, if it succeeds with input consumed, isConsumed()
succeeds; if it fails or did not consume input, isConsumed() fails.
|
static Parser<_> |
Scanners.isLineComment(java.lang.String start)
if the current input starts with the given string, succeed and consumes all the characters until the end of line '\n character.
|
static Parser<_> |
Scanners.isLineComment(java.lang.String name,
java.lang.String start)
if the current input starts with the given string, succeed and consumes all the characters until the end of line '\n character.
|
static Parser<_> |
Scanners.isNestableBlockComment(Parser<?> open,
Parser<?> close,
Parser<?> commented)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isNestableBlockComment(java.lang.String name,
Parser<?> open,
Parser<?> close,
Parser<?> commented)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isNestableBlockComment(java.lang.String open,
java.lang.String close)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isNestableBlockComment(java.lang.String open,
java.lang.String close,
Parser<?> commented)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isPattern(Pattern pp,
java.lang.String err)
Scans the input for an occurrence of a string pattern.
|
static Parser<_> |
Scanners.isPattern(java.lang.String name,
Pattern pp,
java.lang.String err)
Scans the input for an occurrence of a string pattern.
|
static Parser<_> |
Scanners.isQuotedChar()
scanner for a c/c++/java style character literal.
|
static Parser<_> |
Scanners.isQuotedChar(java.lang.String name)
scanner for a c/c++/java style character literal.
|
static Parser<_> |
Scanners.isQuotedString()
a scanner with a pattern for double quoted string literal.
|
static Parser<_> |
Scanners.isQuotedString(java.lang.String name)
a scanner with a pattern for double quoted string literal.
|
Parser<Type> |
Parser.isReturn(ObjectPredicate<? super Type> op)
Fails if the return value of this parser does not satisify the given predicate.
|
Parser<Type> |
Parser.isReturn(ObjectPredicate<? super Type> op,
java.lang.String expecting)
Fails if the return value of this parser does not satisify the given predicate.
|
Parser<Type> |
Parser.isReturn(java.lang.String name,
ObjectPredicate<? super Type> op)
Fails if the return value of this parser does not satisify the given predicate.
|
Parser<Type> |
Parser.isReturn(java.lang.String name,
ObjectPredicate<? super Type> op,
java.lang.String expecting)
Fails if the return value of this parser does not satisify the given predicate.
|
static <R> Parser<R> |
Parsers.isReturn(java.lang.String name,
ObjectPredicate<R> op)
Fails if the return value of the previous parser does not satisify the
given predicate.
|
static <R> Parser<R> |
Parsers.isReturn(java.lang.String name,
Parser<R> p,
ObjectPredicate<? super R> op)
The created Parser object will first run parser p, if the return value of
parser p does not satisify the given predicate, it fails and the input
consumption of parser p is undone.
|
static <R> Parser<R> |
Parsers.isReturn(java.lang.String name,
Parser<R> p,
ObjectPredicate<? super R> op,
java.lang.String expecting)
The created Parser object will first run parser p, if the return value of
parser p does not satisify the given predicate, it fails and the input
consumption of parser p is undone.
|
static Parser<_> |
Scanners.isSqlString()
a scanner with a pattern for sql server string literal.
|
static Parser<_> |
Scanners.isSqlString(java.lang.String name)
a scanner with a pattern for sql server string literal.
|
static Parser<?> |
Parsers.isState(ObjectPredicate<java.lang.Object> op)
Deprecated.
as of version 0.6
|
static Parser<?> |
Parsers.isState(java.lang.String name,
ObjectPredicate<java.lang.Object> op)
Deprecated.
as of version 0.6
|
static Parser<_> |
Scanners.isString(java.lang.String str)
matches the input against the specified string.
|
static Parser<_> |
Scanners.isString(java.lang.String str,
java.lang.String err)
matches the input against the specified string.
|
static Parser<_> |
Scanners.isString(java.lang.String name,
java.lang.String str,
java.lang.String err)
matches the input against the specified string.
|
static Parser<_> |
Scanners.isStringCI(java.lang.String str)
matches the input against the specified string case insensitively.
|
static Parser<_> |
Scanners.isStringCI(java.lang.String str,
java.lang.String err)
matches the input against the specified string case insensitively.
|
static Parser<_> |
Scanners.isStringCI(java.lang.String name,
java.lang.String str,
java.lang.String err)
matches the input against the specified string case insensitively.
|
static Parser<_> |
Scanners.isWhitespaces()
Scans greedily for 1 or more whitespace characters.
|
static Parser<_> |
Scanners.isWhitespaces(java.lang.String name)
Scans greedily for 1 or more whitespace characters.
|
static Parser<_> |
Scanners.isWhitespaces(java.lang.String name,
java.lang.String err)
Scans greedily for 1 or more whitespace characters.
|
static Parser<_> |
Scanners.javaBlockComment()
scanner for c++/java style block comment.
|
static Parser<_> |
Scanners.javaDelimiter()
the c++/java style delimiter of tokens.
|
static Parser<_> |
Scanners.javaDelimiter(java.lang.String name)
the c++/java style delimiter of tokens.
|
static Parser<_> |
Scanners.javaLineComment()
scanner for c++/java style line comment.
|
Parser<Type> |
Parser.label(java.lang.String lbl)
if fails and did not consume input,
reports an expecting error with the given label.
|
Parser<Type> |
Parser.label(java.lang.String name,
java.lang.String lbl)
if fails and did not consume input,
reports an expecting error with the given label.
|
static <R> Parser<R> |
Parsers.label(java.lang.String name,
java.lang.String lbl,
Parser<R> p)
if Parser p fails and does not consume input, reports an expecting error
with the given label.
|
static <R> Parser<R> |
Parsers.lazy(Parser<R>[] placeholder)
Create a lazy evaluated parser.
|
static <R> Parser<R> |
Parsers.lazy(Parser<R>[] placeholder,
int pos)
Create a lazy evaluated parser.
|
static <R> Parser<R> |
Parsers.lazy(ParserEval<R> p)
Create a lazy evaluated Parser.
|
static <R> Parser<R> |
Parsers.lazy(java.lang.String name,
ParserEval<R> p)
Create a lazy evaluated Parser.
|
static Parser<Tok> |
Lexers.lexDecLong()
returns the lexer that's gonna parse a decimal integer number (valid patterns are: 1, 10, 123),
and convert the string to a Long token.
|
static Parser<Tok> |
Lexers.lexDecLong(java.lang.String name)
returns the lexer that's gonna parse a decimal integer number (valid patterns are: 1, 10, 123),
and convert the string to a Long token.
|
static Parser<Tok[]> |
Lexers.lexeme(Parser<?> delim,
Parser<Tok> s)
Greedily runs Parser s repeatedly,
and ignores the pattern recognized by Parser delim before and after each s.
|
static Parser<Tok[]> |
Scanners.lexeme(Parser<?> delim,
Parser<Tok> s)
Deprecated.
|
static Parser<Tok[]> |
Lexers.lexeme(java.lang.String name,
Parser<?> delim,
Parser<Tok> s)
Greedily runs Parser s repeatedly,
and ignores the pattern recognized by Parser delim before and after each s.
|
static Parser<Tok[]> |
Scanners.lexeme(java.lang.String name,
Parser<?> delim,
Parser<Tok> s)
Deprecated.
|
static Parser<Tok> |
Lexers.lexer(Parser<?> s,
Tokenizer tn)
Transform the recognized character range of scanner s to a token object
with a Tokenizer.
|
static Parser<Tok> |
Scanners.lexer(Parser<?> s,
Tokenizer tn)
Deprecated.
|
static Parser<Tok> |
Lexers.lexer(Parser<?> s,
Tokenizer tn,
java.lang.String err)
Transform the recognized character range of scanner s to a token object
with a Tokenizer.
|
static Parser<Tok> |
Scanners.lexer(Parser<?> s,
Tokenizer tn,
java.lang.String err)
Deprecated.
|
static Parser<Tok> |
Lexers.lexer(java.lang.String name,
Parser<?> s,
Tokenizer tn)
Transform the recognized character range of scanner s to a token object
with a Tokenizer.
|
static Parser<Tok> |
Scanners.lexer(java.lang.String name,
Parser<?> s,
Tokenizer tn)
Deprecated.
|
static Parser<Tok> |
Lexers.lexer(java.lang.String name,
Parser<?> s,
Tokenizer tn,
java.lang.String err)
Transform the recognized character range of scanner s to a token object
with a Tokenizer.
|
static Parser<Tok> |
Scanners.lexer(java.lang.String name,
Parser<?> s,
Tokenizer tn,
java.lang.String err)
Deprecated.
|
static Parser<Tok> |
Lexers.lexHexLong()
returns the lexer that's gonna parse a hex integer number (valid patterns are: 0x1, 0Xff, 0xFe1 etc.),
and convert the string to a Long token.
|
static Parser<Tok> |
Lexers.lexHexLong(java.lang.String name)
returns the lexer that's gonna parse a hex integer number (valid patterns are: 0x1, 0Xff, 0xFe1 etc.),
and convert the string to a Long token.
|
static Parser<Tok> |
Lexers.lexLong()
returns the lexer that's gonna parse decimal, hex, and octal numbers
and convert the string to a Long token.
|
static Parser<Tok> |
Lexers.lexLong(java.lang.String name)
returns the lexer that's gonna parse decimal, hex, and octal numbers
and convert the string to a Long token.
|
static Parser<Tok> |
Lexers.lexOctLong()
returns the lexer that's gonna parse a octal integer number (valid patterns are: 0, 07, 017, 0371 etc.),
and convert the string to a Long token.
|
static Parser<Tok> |
Lexers.lexOctLong(java.lang.String name)
returns the lexer that's gonna parse a octal integer number (valid patterns are: 0, 07, 017, 0371 etc.),
and convert the string to a Long token.
|
static Parser<Tok> |
Lexers.lexSimpleStringLiteral()
returns the lexer that's gonna parse double quoted string literal (escaped by '\'),
and convert the string to a String token.
|
static Parser<Tok> |
Lexers.lexSimpleStringLiteral(java.lang.String name)
returns the lexer that's gonna parse double quoted string literal (escaped by '\'),
and convert the string to a String token.
|
static <R> Parser<R> |
Parsers.longer(Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.longer(java.lang.String name,
Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.longest(Parser<R>... ps)
Runs an array of alternative parsers.
|
static <R> Parser<R> |
Parsers.longest(java.lang.String name,
Parser<R>... ps)
Runs an array of alternative parsers.
|
Parser<Type> |
Parser.lookahead(int toknum)
By default, ifelse, plus, sum will not try to run the next branch if the previous branch failed
and consumed some input.
|
Parser<Type> |
Parser.lookahead(java.lang.String name,
int toknum)
By default, ifelse, plus, sum will not try to run the next branch if the previous branch failed
and consumed some input.
|
static <R> Parser<R> |
Parsers.lookahead(java.lang.String name,
int toknum,
Parser<R> p)
By default, ifelse, plus, sum will not try to run the next branch if the
previous branch failed and consumed some input.
|
Parser<_> |
Parser.many()
p.many() is equivalent to p* in EBNF.
|
Parser<Type[]> |
Parser.many(ArrayFactory<Type> af)
p.many(af) is equivalent to p* in EBNF.
|
Parser<Type[]> |
Parser.many(ArrayFactory<Type> af,
int min)
Runs this parser greedily for at least min times.
|
static Parser<_> |
Scanners.many(CharPredicate cp)
Scans greedily for 0 or more characters
that satisfies the given CharPredicate.
|
Parser<Type[]> |
Parser.many(java.lang.Class<Type> elem_type)
p.many(elem_type) is equivalent to p* in EBNF.
|
Parser<Type[]> |
Parser.many(java.lang.Class<Type> elem_type,
int min)
Runs this parser greedily for at least min times.
|
Parser<_> |
Parser.many(int min)
Runs this parser greedily for at least min times.
|
static Parser<_> |
Scanners.many(Pattern pp)
Scans greedily for 0 or more occurrences of the given pattern.
|
Parser<_> |
Parser.many(java.lang.String name)
p.many(name) is equivalent to p* in EBNF.
|
static <R> Parser<R[]> |
Parsers.many(java.lang.String name,
ArrayFactory<R> af,
int min,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at least min times and collect the
result in an array created by ArrayFactory object.
|
static <R> Parser<R[]> |
Parsers.many(java.lang.String name,
ArrayFactory<R> af,
Parser<? extends R> p)
Greedily runs Parser p repeatedly and collect the result in an array
created by ArrayFactory object.
|
Parser<Type[]> |
Parser.many(java.lang.String name,
ArrayFactory<Type> af)
p.many(name, af) is equivalent to p* in EBNF.
|
Parser<Type[]> |
Parser.many(java.lang.String name,
ArrayFactory<Type> af,
int min)
Runs this parser greedily for at least min times.
|
static Parser<_> |
Scanners.many(java.lang.String name,
CharPredicate cp)
Scans greedily for 0 or more characters
that satisfies the given CharPredicate.
|
static <R> Parser<R[]> |
Parsers.many(java.lang.String name,
java.lang.Class<R> etype,
int min,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at least min times and collect the
result in an array whose element type is etype.
|
static <R> Parser<R[]> |
Parsers.many(java.lang.String name,
java.lang.Class<R> etype,
Parser<? extends R> p)
Greedily runs Parser p repeatedly and collect the result in an array whose
element type is etype.
|
Parser<Type[]> |
Parser.many(java.lang.String name,
java.lang.Class<Type> elem_type)
p.many(name, elem_type) is equivalent to p* in EBNF.
|
Parser<Type[]> |
Parser.many(java.lang.String name,
java.lang.Class<Type> elem_type,
int min)
Runs this parser greedily for at least min times.
|
Parser<_> |
Parser.many(java.lang.String name,
int min)
Runs this parser greedily for at least min times.
|
static <R> Parser<_> |
Parsers.many(java.lang.String name,
int min,
Parser<?> p)
Greedily runs Parser p repeatedly for at least min times and discard the
results.
|
static Parser<_> |
Parsers.many(java.lang.String name,
Parser<?> p)
Greedily runs Parser p repeatedly and discard the results.
|
static Parser<_> |
Scanners.many(java.lang.String name,
Pattern pp)
Scans greedily for 0 or more occurrences of the given pattern.
|
Parser<_> |
Parser.many1()
p.many1() is equivalent to p+ in EBNF.
|
Parser<Type[]> |
Parser.many1(ArrayFactory<Type> af)
p.many1(af) is equivalent to p+ in EBNF.
|
static Parser<_> |
Scanners.many1(CharPredicate cp)
Scans greedily for 1 or more characters
that satisfies the given CharPredicate.
|
Parser<Type[]> |
Parser.many1(java.lang.Class<Type> elem_type)
p.many1(elem_type) is equivalent to p+ in EBNF.
|
static Parser<_> |
Scanners.many1(Pattern pp)
Scans greedily for 1 or more occurrences of the given pattern.
|
Parser<_> |
Parser.many1(java.lang.String name)
p.many1(name) is equivalent to p+ in EBNF.
|
Parser<Type[]> |
Parser.many1(java.lang.String name,
ArrayFactory<Type> af)
p.many1(name, af) is equivalent to p+ in EBNF.
|
static Parser<_> |
Scanners.many1(java.lang.String name,
CharPredicate cp)
Scans greedily for 1 or more characters
that satisfies the given CharPredicate.
|
Parser<Type[]> |
Parser.many1(java.lang.String name,
java.lang.Class<Type> elem_type)
p.many1(name, elem_type) is equivalent to p+ in EBNF.
|
static Parser<_> |
Scanners.many1(java.lang.String name,
Pattern pp)
Scans greedily for 1 or more occurrences of the given pattern.
|
static <From,A extends From,R,To extends R> |
Parsers.manyAccum(java.lang.String name,
Accumulatable<From,To> accm,
int min,
Parser<A> p)
Greedily runs Parser p repeatedly for at least min times and collect the
result with the Accumulator object created by Accumulatable.
|
static <From,A extends From,R,To extends R> |
Parsers.manyAccum(java.lang.String name,
Accumulatable<From,To> accm,
Parser<A> p)
Greedily runs Parser p repeatedly for 0 or more times.
|
<R> Parser<R> |
Parser.map(Map<? super Type,R> m)
if this succeeds, the returned value is transformed with m to a new return value.
|
<R> Parser<R> |
Parser.map(java.lang.String name,
Map<? super Type,R> m)
if this succeeds, the returned value is transformed with m to a new return value.
|
static <R,From> Parser<R> |
Parsers.map(java.lang.String name,
Parser<From> p,
Map<? super From,R> m)
Transform the return value of Parser p to a different value.
|
static <A,B,R> Parser<R> |
Parsers.map2(Parser<A> p1,
Parser<B> p2,
Map2<? super A,? super B,R> m2)
Run 2 Parsers sequentially and transform the return values to a new value.
|
static <A,B,R> Parser<R> |
Parsers.map2(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Map2<? super A,? super B,R> m2)
Run 2 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,R> Parser<R> |
Parsers.map3(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Map3<? super A,? super B,? super C,R> m3)
Run 3 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,R> Parser<R> |
Parsers.map3(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Map3<? super A,? super B,? super C,R> m3)
Run 3 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <E,R> Parser<R> |
Parsers.mapn(ArrayFactory<?> af,
Parser<?>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <E,R> Parser<R> |
Parsers.mapn(java.lang.Class<? super E> etype,
Parser<E>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <R> Parser<R> |
Parsers.mapn(Parser<?>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <R> Parser<R> |
Parsers.mapn(java.lang.String name,
ArrayFactory<?> af,
Parser<?>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <E,R> Parser<R> |
Parsers.mapn(java.lang.String name,
java.lang.Class<? super E> etype,
Parser<E>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <R> Parser<R> |
Parsers.mapn(java.lang.String name,
Parser<?>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <R> Parser<R> |
Terms.myParser(FromMyText<R> fm)
Deprecated.
|
static <R> Parser<R> |
Terms.myParser(int kind,
FromString<R> fs)
Deprecated.
|
static <R> Parser<R> |
Terms.myParser(java.lang.String name,
FromMyText<R> fm)
Deprecated.
|
static <R> Parser<R> |
Terms.myParser(java.lang.String name,
int kind,
FromString<R> fs)
Deprecated.
|
Parser<?> |
Parser.not()
fails if 'this' succeeds.
|
Parser<?> |
Parser.not(java.lang.String err)
fails if 'this' succeeds.
|
static Parser<?> |
Parsers.not(java.lang.String name,
Parser<?> p)
Succeeds if Parser p fails; Fails otherwise.
|
static Parser<?> |
Parsers.not(java.lang.String name,
Parser<?> p,
java.lang.String errmsg)
Succeeds if Parser p fails; Fails otherwise.
|
Parser<?> |
Parser.not(java.lang.String name,
java.lang.String err)
fails if 'this' succeeds.
|
static Parser<_> |
Scanners.notAmong(char[] chars)
succeed and consume the current character if it is not equal to any of the given characters.
|
static Parser<_> |
Scanners.notAmong(char[] chars,
java.lang.String err)
succeed and consume the current character if it is not equal to any of the given characters.
|
static Parser<_> |
Scanners.notAmong(java.lang.String name,
char[] chars)
succeed and consume the current character if it is not equal to any of the given characters.
|
static Parser<_> |
Scanners.notAmong(java.lang.String name,
char[] chars,
java.lang.String err)
succeed and consume the current character if it is not equal to any of the given characters.
|
static Parser<_> |
Scanners.notChar(char ch)
succeed and consume the current character if it is not equal to ch.
|
static Parser<_> |
Scanners.notChar(char ch,
java.lang.String err)
succeed and consume the current character if it is equal to ch.
|
static Parser<_> |
Scanners.notChar(java.lang.String name,
char ch)
succeed and consume the current character if it is not equal to ch.
|
static Parser<_> |
Scanners.notChar(java.lang.String name,
char ch,
java.lang.String err)
succeed and consume the current character if it is not equal to ch.
|
static <R> Parser<R> |
Parsers.notConsumed(Parser<R> p)
First run the Parser p, if it succeeds with no input consumed,
notConsumed() succeeds; if it fails, notConsumed() fails; if it succeeds
and consumes input, the input consumption is undone and notConsumed()
fails.
|
static <R> Parser<R> |
Parsers.notConsumed(Parser<R> p,
java.lang.String err)
First run the Parser p, if it succeeds with no input consumed,
notConsumed() succeeds; if it fails, notConsumed() fails; if it succeeds
and consumes input, the input consumption is undone and notConsumed()
fails.
|
static <R> Parser<R> |
Parsers.notConsumed(java.lang.String name,
Parser<R> p)
First run the Parser p, if it succeeds with no input consumed,
notConsumed() succeeds; if it fails, notConsumed() fails; if it succeeds
and consumes input, the input consumption is undone and notConsumed()
fails.
|
static <R> Parser<R> |
Parsers.notConsumed(java.lang.String name,
Parser<R> p,
java.lang.String err)
First run the Parser p, if it succeeds with no input consumed,
notConsumed() succeeds; if it fails, notConsumed() fails; if it succeeds
and consumes input, the input consumption is undone and notConsumed()
fails.
|
static Parser<Tok> |
Lexers.octInteger()
Deprecated.
Use
Lexers.lexOctLong() . |
static Parser<Tok> |
Lexers.octInteger(java.lang.String name)
Deprecated.
|
static Parser<?> |
Parsers.one()
The parser that always succeed.
|
static Parser<?> |
Parsers.one(java.lang.String name)
The parser that always succeed.
|
static <R> Parser<R> |
Parsers.option(R v,
Parser<R> p)
Runs Parser p, if it fails with no input consumed, return default value v
instead.
|
static <R> Parser<R> |
Parsers.option(java.lang.String name,
R v,
Parser<R> p)
Runs Parser p, if it fails with no input consumed, return default value v
instead.
|
Parser<Type> |
Parser.option(java.lang.String name,
Type def)
If this fails with no input consumed, the default value is returned.
|
Parser<Type> |
Parser.option(Type def)
If this fails with no input consumed, the default value is returned.
|
Parser<Type> |
Parser.optional()
p.optional() is equivalent to p? in EBNF.
|
static <R> Parser<R> |
Parsers.optional(Parser<R> p)
Runs Parser p, if it fails with no input consumed, succeed anyway with null as the result.
|
Parser<Type> |
Parser.optional(java.lang.String name)
p.optional(name) is equivalent to p? in EBNF.
|
static <R> Parser<R> |
Parsers.optional(java.lang.String name,
Parser<R> p)
Runs Parser p, if it fails with no input consumed, succeed anyway with null as result.
|
static Parser<java.lang.Object> |
Parsers.or(Parser<?>... alternatives)
To create a Parser that runs an array of Parser objects
until one succeeds.
|
static Parser<java.lang.Object> |
Parsers.or(java.lang.String name,
Parser<?>... alternatives)
To create a Parser that runs an array of Parser objects
until one succeeds.
|
static <A,B> Parser<Pair<A,B>> |
Parsers.pair(Parser<A> p1,
Parser<B> p2)
Sequentially run 2 parser objects and collect the results in a Pair object.
|
static <A,B> Parser<Pair<A,B>> |
Parsers.pair(java.lang.String name,
Parser<A> p1,
Parser<B> p2)
Sequentially run 2 parser objects and collect the results in a Pair object.
|
static <R> Parser<R> |
Parsers.parseTokens(Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(java.lang.String name,
Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(java.lang.String eof_title,
ShowToken show,
Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(java.lang.String name,
java.lang.String eof_title,
ShowToken show,
Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
Parser<Type> |
Parser.peek()
this is a look-ahead operation.
|
Parser<Type> |
Parser.peek(java.lang.String name)
this is a look-ahead operation.
|
static <R> Parser<R> |
Parsers.peek(java.lang.String name,
Parser<R> p)
Look ahead with Parser p.
|
static <R> Parser<R> |
Parsers.plus(Parser<R>... ps)
combine alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2)
2 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3)
3 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R>... ps)
combine alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2)
2 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3)
3 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <T> Parser<T> |
Parsers.postfix(Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser p and then run Parser op for 0 or more times greedily.
|
static <T> Parser<T> |
Parsers.postfix(java.lang.String name,
Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser p and then run Parser op for 0 or more times greedily.
|
static <T> Parser<T> |
Parsers.prefix(Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser op for 0 or more times greedily.
|
static <T> Parser<T> |
Parsers.prefix(java.lang.String name,
Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser op for 0 or more times greedily.
|
Parser<Type> |
Parser.printError(java.lang.String id)
Create a Parser object that traces the parsing error of this parser when it fails.
|
Parser<Type> |
Parser.printError(java.lang.String id,
int min_steps)
Create a Parser object that traces the parsing error of this parser when it fails.
|
Parser<Type> |
Parser.printResult(java.lang.String id)
Create a Parser object that traces the parsing result of this parser when it succeeds.
|
Parser<Type> |
Parser.printTrace(java.lang.String id)
Create a Parser object that traces the parsing result of this parser when it terminates.
|
static Parser<Tok> |
Lexers.quoted(char open,
char close)
Create a lexer that parsers a string literal quoted by open and close,
and then converts it to a TokenQuoted token instance.
|
static Parser<_> |
Scanners.quoted(char c1,
char c2)
scans a quoted string that is opened by c1 and closed by c2.
|
static Parser<_> |
Scanners.quoted(Parser<_> open,
Parser<_> close,
Parser<?> s)
scans a quoted string that is opened by c1 and closed by c2.
|
static Parser<Tok> |
Lexers.quoted(java.lang.String name,
char open,
char close)
Create a lexer that parsers a string literal quoted by open and close,
and then converts it to a TokenQuoted token instance.
|
static Parser<_> |
Scanners.quoted(java.lang.String name,
char c1,
char c2)
scans a quoted string that is opened by c1 and closed by c2.
|
static Parser<_> |
Scanners.quoted(java.lang.String name,
Parser<_> open,
Parser<_> close,
Parser<?> s)
scans a quoted string that is opened by pattern represented by Scanner open and closed by pattern represented by Scanner close.
|
static <R> Parser<R> |
Terms.quotedWordParser(FromString3<R> fc)
gets a Parser object to parse TokenQuoted.
|
static <R> Parser<R> |
Terms.quotedWordParser(java.lang.String name,
FromString3<R> fc)
gets a Parser object to parse TokenQuoted.
|
static <R> Parser<R> |
Parsers.raise(java.lang.Object e)
throws a pseudo-exception.
|
static <R> Parser<R> |
Parsers.raise(java.lang.String name,
java.lang.Object e)
throws a pseudo-exception.
|
Parser<Type[]> |
Parser.repeat(ArrayFactory<Type> af,
int n)
Run Parser 'this' for n times, collect the return values in an array
created by the ArrayFactory object.
|
Parser<Type[]> |
Parser.repeat(java.lang.Class<Type> etype,
int n)
Run Parser 'this' for n times, collect the return values in an array
whose element type is etype.
|
Parser<_> |
Parser.repeat(int n)
Run Parser 'this' for n times.
|
static <R> Parser<R[]> |
Parsers.repeat(java.lang.String name,
ArrayFactory<R> af,
int n,
Parser<? extends R> p)
Runs Parser p for n times, collect the return values in an array created by
the ArrayFactory object.
|
Parser<Type[]> |
Parser.repeat(java.lang.String name,
ArrayFactory<Type> af,
int n)
Run Parser 'this' for n times, collect the return values in an array
created by the ArrayFactory object.
|
static <R> Parser<R[]> |
Parsers.repeat(java.lang.String name,
java.lang.Class<R> etype,
int n,
Parser<? extends R> p)
Runs Parser p for n times, collect the return values in an array whose
element type is etype.
|
Parser<Type[]> |
Parser.repeat(java.lang.String name,
java.lang.Class<Type> etype,
int n)
Run Parser 'this' for n times, collect the return values in an array
whose element type is etype.
|
Parser<_> |
Parser.repeat(java.lang.String name,
int n)
Run Parser 'this' for n times.
|
static Parser<_> |
Parsers.repeat(java.lang.String name,
int n,
Parser<?> p)
Runs Parser p for n times.
|
static <R> Parser<R> |
Parsers.retn(R r)
The parser that returns value v.
|
static <R> Parser<R> |
Parsers.retn(java.lang.String name,
R r)
The parser that returns value v.
|
static Parser<?> |
Parsers.runnable(java.lang.Runnable runnable)
To create a Parser that always succeeds and causes a certain side effect
using a Runnable object.
|
static Parser<?> |
Parsers.runnable(java.lang.String name,
java.lang.Runnable runnable)
To create a Parser that always succeeds and causes a certain side effect
using a Runnable object.
|
static Parser<_> |
Scanners.scanChars(Parser<?> p,
Parser<_> scanner,
java.lang.String module)
After character level parser p succeeds,
subsequently feed the recognized characters to the Parser scanner
for a nested scanning.
|
static Parser<_> |
Scanners.scanChars(java.lang.String name,
Parser<?> p,
Parser<_> scanner,
java.lang.String module)
After character level parser p succeeds,
subsequently feed the recognized characters to the Parser scanner
for a nested scanning.
|
static <R> Parser<R[]> |
Parsers.sepBy(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static Parser<_> |
Parsers.sepBy(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static Parser<_> |
Parsers.sepBy(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy1(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy1(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
Class -> Parser a -> Parser [Object].
|
static Parser<_> |
Parsers.sepBy1(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R,A extends R> |
Parsers.sepBy1(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<A> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy1(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
Class -> Parser a -> Parser [Object].
|
static Parser<_> |
Parsers.sepBy1(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy1(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy1(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<R> p3)
Sequencing 3 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<R> p2)
Sequencing 2 parser objects.
|
<R> Parser<R> |
Parser.seq(Parser<R> p)
if this parser succeeds,
the returned value is discarded and the next parser is excuted.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<R> p3)
Sequencing 3 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<R> p2)
Sequencing 2 parser objects.
|
<R> Parser<R> |
Parser.seq(java.lang.String name,
Parser<R> p)
if this parser succeeds,
the returned value is discarded and the next parser is excuted.
|
static Parser<java.lang.Object> |
Parsers.seqAll(Parser<?>[] ps)
Sequencing of an array of Parser objects.
|
static Parser<java.lang.Object> |
Parsers.seqAll(java.lang.String name,
Parser<?>[] ps)
Sequencing of an array of Parser objects.
|
static Parser<?> |
Parsers.sequence(Parser<?>... ps)
Sequencing of an array of Parser objects.
|
static Parser<?> |
Parsers.sequence(java.lang.String name,
Parser<?>... ps)
Sequencing of an array of Parser objects.
|
static Parser<java.lang.Object> |
Parsers.setState(java.lang.Object s)
Deprecated.
as of version 0.6
|
static Parser<java.lang.Object> |
Parsers.setState(java.lang.String name,
java.lang.Object s)
Deprecated.
as of version 0.6
|
static <R> Parser<R> |
Parsers.shorter(Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.shorter(java.lang.String name,
Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.shortest(Parser<R>... ps)
Runs an array of alternative parsers.
|
static <R> Parser<R> |
Parsers.shortest(java.lang.String name,
Parser<R>... ps)
Runs an array of alternative parsers.
|
Parser<Type[]> |
Parser.some(ArrayFactory<Type> af,
int max)
Runs this for up to max times.
|
Parser<Type[]> |
Parser.some(ArrayFactory<Type> af,
int min,
int max)
Runs this for at least min times and at most max times.
|
Parser<Type[]> |
Parser.some(java.lang.Class<Type> etype,
int max)
Runs this for up to max times.
|
Parser<Type[]> |
Parser.some(java.lang.Class<Type> elem_type,
int min,
int max)
Runs this for at least min times and at most max times.
|
Parser<_> |
Parser.some(int max)
Runs this for up to max times.
|
Parser<_> |
Parser.some(int min,
int max)
Runs this for at least min times and at most max times.
|
static <R> Parser<R[]> |
Parsers.some(java.lang.String name,
ArrayFactory<R> af,
int min,
int max,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at least min times and at most max
time.
|
static <R> Parser<R[]> |
Parsers.some(java.lang.String name,
ArrayFactory<R> af,
int max,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at most max time.
|
Parser<Type[]> |
Parser.some(java.lang.String name,
ArrayFactory<Type> af,
int max)
Runs this for up to max times.
|
Parser<Type[]> |
Parser.some(java.lang.String name,
ArrayFactory<Type> af,
int min,
int max)
Runs this for at least min times and at most max times.
|
static <R> Parser<R[]> |
Parsers.some(java.lang.String name,
java.lang.Class<R> etype,
int min,
int max,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at least min times and at most max
times.
|
static <R> Parser<R[]> |
Parsers.some(java.lang.String name,
java.lang.Class<R> etype,
int max,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at most max times.
|
Parser<Type[]> |
Parser.some(java.lang.String name,
java.lang.Class<Type> etype,
int max)
Runs this for up to max times.
|
Parser<Type[]> |
Parser.some(java.lang.String name,
java.lang.Class<Type> elem_type,
int min,
int max)
Runs this for at least min times and at most max times.
|
Parser<_> |
Parser.some(java.lang.String name,
int max)
Runs this for up to max times.
|
Parser<_> |
Parser.some(java.lang.String name,
int min,
int max)
Runs this for at least min times and at most max times.
|
static <R> Parser<_> |
Parsers.some(java.lang.String name,
int min,
int max,
Parser<?> p)
Greedily runs Parser p repeatedly for at least min times and at most max
time.
|
static Parser<_> |
Parsers.some(java.lang.String name,
int max,
Parser<?> p)
Greedily runs Parser p repeatedly for at most max time.
|
static <From,A extends From,R,To extends R> |
Parsers.someAccum(java.lang.String name,
Accumulatable<From,To> accm,
int min,
int max,
Parser<A> p)
Greedily runs Parser p repeatedly for at least min times and at most max
times, collect the result with the Accumulator object created by
Accumulatable.
|
static <From,A extends From,R,To extends R> |
Parsers.someAccum(java.lang.String name,
Accumulatable<From,To> accm,
int max,
Parser<A> p)
Greedily runs Parser p repeatedly for at most max times, collect the result
with the Accumulator object created by Accumulatable.
|
static Parser<_> |
Scanners.sqlDelimiter()
the T-SQL style delimiter of tokens.
|
static Parser<_> |
Scanners.sqlDelimiter(java.lang.String name)
the T-SQL style delimiter of tokens.
|
static Parser<_> |
Scanners.sqlLineComment()
scanner for T-SQL style line comment.
|
static Parser<Tok> |
Lexers.sqlStringLiteral()
returns the lexer that's gonna parse single quoted string literal (single quote is escaped with another single quote),
and convert the string to a String token.
|
static Parser<Tok> |
Lexers.sqlStringLiteral(java.lang.String name)
returns the lexer that's gonna parse single quoted string literal (single quote is escaped with another single quote),
and convert the string to a String token.
|
static Parser<_> |
Scanners.stdDelimiter(java.lang.String lcomment,
java.lang.String openc,
java.lang.String closec)
Any delimiter with whitespace, non-nested block comment and line comment.
|
static Parser<_> |
Scanners.stdDelimiter(java.lang.String name,
java.lang.String lcomment,
java.lang.String openc,
java.lang.String closec)
Any delimiter with whitespace, non-nested block comment and line comment.
|
Parser<Type> |
Parser.step()
lookahead looks at logical steps.
|
Parser<Type> |
Parser.step(int n)
lookahead looks at logical steps.
|
Parser<Type> |
Parser.step(java.lang.String name)
lookahead looks at logical steps.
|
Parser<Type> |
Parser.step(java.lang.String name,
int n)
lookahead looks at logical steps.
|
static <R> Parser<R> |
Parsers.step(java.lang.String name,
int n,
Parser<R> p)
lookahead looks at logical steps.
|
static Parser<Tok> |
Lexers.stringLiteral()
Deprecated.
|
static Parser<Tok> |
Lexers.stringLiteral(java.lang.String name)
Deprecated.
|
static <R> Parser<R> |
Terms.stringParser(FromString<R> fc)
gets a Parser object to parse String token.
|
static <R> Parser<R> |
Terms.stringParser(java.lang.String name,
FromString<R> fc)
gets a Parser object to parse String token.
|
static Parser<java.lang.Object> |
Parsers.sum(Parser<?>... ps)
An array of alternative Parser objects.
|
static Parser<java.lang.Object> |
Parsers.sum(java.lang.String name,
Parser<?>... ps)
An array of alternative Parser objects.
|
static <R> Parser<R> |
Parsers.token(FromToken<R> ft)
Token level parser.
|
static Parser<Tok> |
Parsers.token(java.lang.Object t)
Token level parser.
|
static <R> Parser<R> |
Parsers.token(java.lang.String name,
FromToken<R> ft)
Token level parser.
|
static Parser<Tok> |
Parsers.token(java.lang.String name,
java.lang.Object t)
Token level parser.
|
Parser<To> |
ToParser.toParser(From v)
maps v to a Parser.
|
Parser<Type> |
Parser.trace(jfun.parsec.trace.Trace<? super Type> trc)
Create a Parser object that traces the parsing result of this parser.
|
static <State> Parser<State> |
Parsers.transformState(Map<State,?> m)
Deprecated.
as of version 0.6
|
static <State> Parser<State> |
Parsers.transformState(java.lang.String name,
Map<State,?> m)
Deprecated.
as of version 0.6
|
static <R> Parser<R> |
Parsers.tryParser(Parser<R> p,
Catch<? extends R> hdl)
if Parser p throws an exception, it is handled by Catch hdl.
|
static <R> Parser<R> |
Parsers.tryParser(java.lang.String name,
Parser<R> p,
Catch<? extends R> hdl)
if Parser p throws an exception, it is handled by Catch hdl.
|
static <A,B,C> Parser<Tuple3<A,B,C>> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3)
Sequentially run 3 parser objects and collect the results in a Tuple3 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D,E> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C> Parser<Tuple3<A,B,C>> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3)
Sequentially run 3 parser objects and collect the results in a Tuple3 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D,E> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <x> Parser<x> |
Parsers.unexpected(java.lang.String msg)
Reports an unexpected error.
|
static <x> Parser<x> |
Parsers.unexpected(java.lang.String name,
java.lang.String msg)
Reports an unexpected error.
|
static Parser<Tok> |
Lexers.word()
returns the lexer that's gonna parse any word.
|
static Parser<Tok> |
Lexers.word(java.lang.String name)
returns the lexer that's gonna parse any word.
|
static <R> Parser<R> |
Terms.wordParser(FromString<R> fc)
gets a Parser object to parse TokenWord.
|
static <R> Parser<R> |
Terms.wordParser(java.lang.String name,
FromString<R> fc)
gets a Parser object to parse TokenWord.
|
static <x> Parser<x> |
Parsers.zero()
The parser that always fails.
|
static <x> Parser<x> |
Parsers.zero(java.lang.String name)
The parser that always fails.
|
Modifier and Type | Method and Description |
---|---|
static <T> Parser<T> |
Parsers.alt(Parser<T>... alternatives)
To create a Parser that runs an array of Parser objects
until one succeeds.
|
static <T> Parser<T> |
Parsers.alt(java.lang.String name,
Parser<T>... alternatives)
To create a Parser that runs an array of Parser objects
until one succeeds.
|
<T,R> Parser<R> |
Parser.and(Parser<T> p,
Map2<? super Type,? super T,R> m)
it sequentially run this and p, and then transforms the two return values with m to a new return value.
|
<T,R> Parser<R> |
Parser.and(java.lang.String name,
Parser<T> p,
Map2<? super Type,? super T,R> m)
it sequentially run this and p, and then transforms the two return values with m to a new return value.
|
static <R> Parser<R> |
Parsers.atomize(java.lang.String name,
Parser<R> p)
Backout input consumption if p fails.
|
static <R> Parser<R> |
Parsers.between(Parser<?> open,
Parser<?> close,
Parser<R> p)
Runs a Parser that is between a pair of parsers.
|
static <R> Parser<R> |
Parsers.between(Parser<?> open,
Parser<?> close,
Parser<R> p)
Runs a Parser that is between a pair of parsers.
|
static <R> Parser<R> |
Parsers.between(Parser<?> open,
Parser<?> close,
Parser<R> p)
Runs a Parser that is between a pair of parsers.
|
static <R> Parser<R> |
Parsers.between(java.lang.String name,
Parser<?> open,
Parser<?> close,
Parser<R> p)
runs a Parser that is between a pair of parsers.
|
static <R> Parser<R> |
Parsers.between(java.lang.String name,
Parser<?> open,
Parser<?> close,
Parser<R> p)
runs a Parser that is between a pair of parsers.
|
static <R> Parser<R> |
Parsers.between(java.lang.String name,
Parser<?> open,
Parser<?> close,
Parser<R> p)
runs a Parser that is between a pair of parsers.
|
static <From,To> Parser<To> |
Parsers.bind(java.lang.String name,
Parser<From> p,
ToParser<? super From,To> f)
First run p, if it succeeds, run ToParser f with the value returned from p.
|
static <E,T extends E> |
Expressions.buildExpressionParser(Parser<T> term,
OperatorTable<E> table)
Creates a Parser object based on information described by OperatorTable.
|
static <E,T extends E> |
Expressions.buildExpressionParser(java.lang.String name,
Parser<T> term,
OperatorTable<E> table)
Creates a Parser object based on information described by OperatorTable.
|
static <R> Parser<R> |
Scanners.delimited(Parser<R> s)
If a string is not followed by a alphanumeric character, it is well-delimited.
|
static <R> Parser<R> |
Scanners.delimited(Parser<R> s,
java.lang.String err)
If a string is not followed by a alphanumeric character, it is well-delimited.
|
static <R> Parser<R> |
Scanners.delimited(java.lang.String name,
Parser<R> s)
If a string is not followed by a alphanumeric character, it is well-delimited.
|
static <R> Parser<R> |
Scanners.delimited(java.lang.String name,
Parser<R> s,
java.lang.String err)
If a string is not followed by a alphanumeric character, it is well-delimited.
|
static <R> Parser<R[]> |
Parsers.endBy(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy1(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy1(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.endBy1(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy1(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
static Parser<_> |
Parsers.endBy1(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern ended by Parser sep pattern.
|
Parser<Type> |
Parser.followedBy(Parser<?> sep)
'this' and 'sep' are executed sequentially.
|
Parser<Type> |
Parser.followedBy(java.lang.String name,
Parser<?> sep)
'this' and 'sep' are executed sequentially.
|
static <R> Parser<R> |
Parsers.followedBy(java.lang.String name,
Parser<?> sep,
Parser<R> p)
First run Parser p, then run Parser sep.
|
static <R> Parser<R> |
Parsers.followedBy(java.lang.String name,
Parser<?> sep,
Parser<R> p)
First run Parser p, then run Parser sep.
|
static Words |
Lexers.getCaseInsensitive(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords)
Creates a Words object for lexing the operators with names specified in ops,
and for lexing the keywords case insensitively.
|
static Terms |
Terms.getCaseInsensitive(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords)
Deprecated.
|
static Words |
Lexers.getCaseInsensitive(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords,
FromString<?> toWord)
Creates a Words object for lexing the operators with names specified in ops,
and for lexing the keywords case insensitively.
|
static Terms |
Terms.getCaseInsensitive(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords,
FromString<?> toWord)
Deprecated.
|
static Terms |
Terms.getCaseInsensitiveInstance(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords)
Creates a Terms object for lexing and parsing the operators with names specified in ops,
and for lexing and parsing the keywords case insensitively.
|
static Terms |
Terms.getCaseInsensitiveInstance(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords,
FromString<?> toWord)
Creates a Terms object for lexing and parsing the operators with names specified in ops,
and for lexing and parsing the keywords case insensitively.
|
static Words |
Lexers.getCaseSensitive(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords)
Creates a Words object for lexing the operators with names specified in ops,
and for lexing the keywords case sensitively.
|
static Terms |
Terms.getCaseSensitive(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords)
Deprecated.
|
static Words |
Lexers.getCaseSensitive(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords,
FromString<?> toWord)
Creates a Words object for lexing the operators with names specified in ops,
and for lexing the keywords case sensitively.
|
static Terms |
Terms.getCaseSensitive(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords,
FromString<?> toWord)
Deprecated.
|
static Terms |
Terms.getCaseSensitiveInstance(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords)
Creates a Terms object for lexing and parsing the operators with names specified in ops,
and for lexing and parsing the keywords case sensitively.
|
static Terms |
Terms.getCaseSensitiveInstance(Parser<?> wscanner,
java.lang.String[] ops,
java.lang.String[] keywords,
FromString<?> toWord)
Creates a Terms object for lexing and parsing the operators with names specified in ops,
and for lexing and parsing the keywords case sensitively.
|
<R> Parser |
Parser.ifelse(Parser<R> yes,
Parser<? extends R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
<R> Parser |
Parser.ifelse(Parser<R> yes,
Parser<? extends R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
static <C,R> Parser<R> |
Parsers.ifelse(java.lang.String name,
Parser<C> p,
Parser<R> yes,
Parser<? extends R> no)
First run Parser p, if it succeeds, run Parser yes; if it fails and no
input is consumed, run Parser no; fails if p fails and some input is
consumed.
|
static <C,R> Parser<R> |
Parsers.ifelse(java.lang.String name,
Parser<C> p,
Parser<R> yes,
Parser<? extends R> no)
First run Parser p, if it succeeds, run Parser yes; if it fails and no
input is consumed, run Parser no; fails if p fails and some input is
consumed.
|
static <C,R> Parser<R> |
Parsers.ifelse(java.lang.String name,
Parser<C> p,
Parser<R> yes,
Parser<? extends R> no)
First run Parser p, if it succeeds, run Parser yes; if it fails and no
input is consumed, run Parser no; fails if p fails and some input is
consumed.
|
static <C,R> Parser<R> |
Parsers.ifelse(java.lang.String name,
Parser<C> p,
ToParser<? super C,R> yes,
Parser<? extends R> no)
First run Parser p, if it succeeds, thread the return value to ToParser
yes; if it fails and no input is consumed, run Parser no; fails if p fails
and some input is consumed.
|
static <C,R> Parser<R> |
Parsers.ifelse(java.lang.String name,
Parser<C> p,
ToParser<? super C,R> yes,
Parser<? extends R> no)
First run Parser p, if it succeeds, thread the return value to ToParser
yes; if it fails and no input is consumed, run Parser no; fails if p fails
and some input is consumed.
|
<R> Parser<R> |
Parser.ifelse(java.lang.String name,
Parser<R> yes,
Parser<R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
<R> Parser<R> |
Parser.ifelse(java.lang.String name,
Parser<R> yes,
Parser<R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
<R> Parser<R> |
Parser.ifelse(java.lang.String name,
ToParser<? super Type,R> yes,
Parser<R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
<R> Parser<R> |
Parser.ifelse(ToParser<? super Type,R> yes,
Parser<R> no)
run yes if this succeeds, no if this fails without consuming input;
fails otherwise.
|
OperatorTable<E> |
OperatorTable.infixl(Parser<? extends Map2<? super E,? super E,? extends E>> p,
int precedence)
Adds a infix left-associative binary operator.
|
static <T> Parser<T> |
Parsers.infixl(Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Left associative infix operator.
|
static <T> Parser<T> |
Parsers.infixl(Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Left associative infix operator.
|
static <T> Parser<T> |
Parsers.infixl(java.lang.String name,
Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Left associative infix operator.
|
static <T> Parser<T> |
Parsers.infixl(java.lang.String name,
Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Left associative infix operator.
|
OperatorTable<E> |
OperatorTable.infixn(Parser<? extends Map2<? super E,? super E,? extends E>> p,
int precedence)
Adds a infix non-associative binary operator.
|
static <T> Parser<T> |
Parsers.infixn(Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> operand)
Non-associative infix operator.
|
static <T> Parser<T> |
Parsers.infixn(Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> operand)
Non-associative infix operator.
|
static <T> Parser<T> |
Parsers.infixn(java.lang.String name,
Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> operand)
Non-associative infix operator.
|
static <T> Parser<T> |
Parsers.infixn(java.lang.String name,
Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> operand)
Non-associative infix operator.
|
OperatorTable<E> |
OperatorTable.infixr(Parser<? extends Map2<? super E,? super E,? extends E>> p,
int precedence)
Adds a infix right-associative binary operator.
|
static <T> Parser<T> |
Parsers.infixr(Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Right associative infix operator.
|
static <T> Parser<T> |
Parsers.infixr(Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Right associative infix operator.
|
static <T> Parser<T> |
Parsers.infixr(java.lang.String name,
Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Right associative infix operator.
|
static <T> Parser<T> |
Parsers.infixr(java.lang.String name,
Parser<? extends Map2<? super T,? super T,T>> op,
Parser<? extends T> p)
Right associative infix operator.
|
static Parser<_> |
Scanners.isBlockComment(Parser<_> open,
Parser<_> close,
Parser<?> commented)
Scans a non-nestable block comment.
|
static Parser<_> |
Scanners.isBlockComment(Parser<_> open,
Parser<_> close,
Parser<?> commented)
Scans a non-nestable block comment.
|
static Parser<_> |
Scanners.isBlockComment(Parser<_> open,
Parser<_> close,
Parser<?> commented)
Scans a non-nestable block comment.
|
static Parser<_> |
Scanners.isBlockComment(java.lang.String name,
Parser<_> open,
Parser<_> close,
Parser<?> commented)
Scans a non-nestable block comment.
|
static Parser<_> |
Scanners.isBlockComment(java.lang.String name,
Parser<_> open,
Parser<_> close,
Parser<?> commented)
Scans a non-nestable block comment.
|
static Parser<_> |
Scanners.isBlockComment(java.lang.String name,
Parser<_> open,
Parser<_> close,
Parser<?> commented)
Scans a non-nestable block comment.
|
static <R> Parser<R> |
Parsers.isConsumed(Parser<R> p)
First run the Parser p, if it succeeds with input consumed, isConsumed()
succeeds; if it fails or did not consume input, isConsumed() fails.
|
static <R> Parser<R> |
Parsers.isConsumed(Parser<R> p,
java.lang.String err)
First run the Parser p, if it succeeds with input consumed, isConsumed()
succeeds; if it fails or did not consume input, isConsumed() fails.
|
static <R> Parser<R> |
Parsers.isConsumed(java.lang.String name,
Parser<R> p)
First run the Parser p, if it succeeds with input consumed, isConsumed()
succeeds; if it fails or did not consume input, isConsumed() fails.
|
static <R> Parser<R> |
Parsers.isConsumed(java.lang.String name,
Parser<R> p,
java.lang.String err)
First run the Parser p, if it succeeds with input consumed, isConsumed()
succeeds; if it fails or did not consume input, isConsumed() fails.
|
static Parser<_> |
Scanners.isNestableBlockComment(Parser<?> open,
Parser<?> close,
Parser<?> commented)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isNestableBlockComment(Parser<?> open,
Parser<?> close,
Parser<?> commented)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isNestableBlockComment(Parser<?> open,
Parser<?> close,
Parser<?> commented)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isNestableBlockComment(java.lang.String name,
Parser<?> open,
Parser<?> close,
Parser<?> commented)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isNestableBlockComment(java.lang.String name,
Parser<?> open,
Parser<?> close,
Parser<?> commented)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isNestableBlockComment(java.lang.String name,
Parser<?> open,
Parser<?> close,
Parser<?> commented)
Scans a nestable block comment.
|
static Parser<_> |
Scanners.isNestableBlockComment(java.lang.String open,
java.lang.String close,
Parser<?> commented)
Scans a nestable block comment.
|
static <R> Parser<R> |
Parsers.isReturn(java.lang.String name,
Parser<R> p,
ObjectPredicate<? super R> op)
The created Parser object will first run parser p, if the return value of
parser p does not satisify the given predicate, it fails and the input
consumption of parser p is undone.
|
static <R> Parser<R> |
Parsers.isReturn(java.lang.String name,
Parser<R> p,
ObjectPredicate<? super R> op,
java.lang.String expecting)
The created Parser object will first run parser p, if the return value of
parser p does not satisify the given predicate, it fails and the input
consumption of parser p is undone.
|
static <R> Parser<R> |
Parsers.label(java.lang.String name,
java.lang.String lbl,
Parser<R> p)
if Parser p fails and does not consume input, reports an expecting error
with the given label.
|
static <R> Parser<R> |
Parsers.lazy(Parser<R>[] placeholder)
Create a lazy evaluated parser.
|
static <R> Parser<R> |
Parsers.lazy(Parser<R>[] placeholder,
int pos)
Create a lazy evaluated parser.
|
static Parser<Tok[]> |
Lexers.lexeme(Parser<?> delim,
Parser<Tok> s)
Greedily runs Parser s repeatedly,
and ignores the pattern recognized by Parser delim before and after each s.
|
static Parser<Tok[]> |
Lexers.lexeme(Parser<?> delim,
Parser<Tok> s)
Greedily runs Parser s repeatedly,
and ignores the pattern recognized by Parser delim before and after each s.
|
static Parser<Tok[]> |
Scanners.lexeme(Parser<?> delim,
Parser<Tok> s)
Deprecated.
|
static Parser<Tok[]> |
Scanners.lexeme(Parser<?> delim,
Parser<Tok> s)
Deprecated.
|
static Parser<Tok[]> |
Lexers.lexeme(java.lang.String name,
Parser<?> delim,
Parser<Tok> s)
Greedily runs Parser s repeatedly,
and ignores the pattern recognized by Parser delim before and after each s.
|
static Parser<Tok[]> |
Lexers.lexeme(java.lang.String name,
Parser<?> delim,
Parser<Tok> s)
Greedily runs Parser s repeatedly,
and ignores the pattern recognized by Parser delim before and after each s.
|
static Parser<Tok[]> |
Scanners.lexeme(java.lang.String name,
Parser<?> delim,
Parser<Tok> s)
Deprecated.
|
static Parser<Tok[]> |
Scanners.lexeme(java.lang.String name,
Parser<?> delim,
Parser<Tok> s)
Deprecated.
|
static Parser<Tok> |
Lexers.lexer(Parser<?> s,
Tokenizer tn)
Transform the recognized character range of scanner s to a token object
with a Tokenizer.
|
static Parser<Tok> |
Scanners.lexer(Parser<?> s,
Tokenizer tn)
Deprecated.
|
static Parser<Tok> |
Lexers.lexer(Parser<?> s,
Tokenizer tn,
java.lang.String err)
Transform the recognized character range of scanner s to a token object
with a Tokenizer.
|
static Parser<Tok> |
Scanners.lexer(Parser<?> s,
Tokenizer tn,
java.lang.String err)
Deprecated.
|
static Parser<Tok> |
Lexers.lexer(java.lang.String name,
Parser<?> s,
Tokenizer tn)
Transform the recognized character range of scanner s to a token object
with a Tokenizer.
|
static Parser<Tok> |
Scanners.lexer(java.lang.String name,
Parser<?> s,
Tokenizer tn)
Deprecated.
|
static Parser<Tok> |
Lexers.lexer(java.lang.String name,
Parser<?> s,
Tokenizer tn,
java.lang.String err)
Transform the recognized character range of scanner s to a token object
with a Tokenizer.
|
static Parser<Tok> |
Scanners.lexer(java.lang.String name,
Parser<?> s,
Tokenizer tn,
java.lang.String err)
Deprecated.
|
static <R> Parser<R> |
Parsers.longer(Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.longer(Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.longer(java.lang.String name,
Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.longer(java.lang.String name,
Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.longest(Parser<R>... ps)
Runs an array of alternative parsers.
|
static <R> Parser<R> |
Parsers.longest(java.lang.String name,
Parser<R>... ps)
Runs an array of alternative parsers.
|
static <R> Parser<R> |
Parsers.lookahead(java.lang.String name,
int toknum,
Parser<R> p)
By default, ifelse, plus, sum will not try to run the next branch if the
previous branch failed and consumed some input.
|
static <R> Parser<R[]> |
Parsers.many(java.lang.String name,
ArrayFactory<R> af,
int min,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at least min times and collect the
result in an array created by ArrayFactory object.
|
static <R> Parser<R[]> |
Parsers.many(java.lang.String name,
ArrayFactory<R> af,
Parser<? extends R> p)
Greedily runs Parser p repeatedly and collect the result in an array
created by ArrayFactory object.
|
static <R> Parser<R[]> |
Parsers.many(java.lang.String name,
java.lang.Class<R> etype,
int min,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at least min times and collect the
result in an array whose element type is etype.
|
static <R> Parser<R[]> |
Parsers.many(java.lang.String name,
java.lang.Class<R> etype,
Parser<? extends R> p)
Greedily runs Parser p repeatedly and collect the result in an array whose
element type is etype.
|
static <R> Parser<_> |
Parsers.many(java.lang.String name,
int min,
Parser<?> p)
Greedily runs Parser p repeatedly for at least min times and discard the
results.
|
static Parser<_> |
Parsers.many(java.lang.String name,
Parser<?> p)
Greedily runs Parser p repeatedly and discard the results.
|
static <From,A extends From,R,To extends R> |
Parsers.manyAccum(java.lang.String name,
Accumulatable<From,To> accm,
int min,
Parser<A> p)
Greedily runs Parser p repeatedly for at least min times and collect the
result with the Accumulator object created by Accumulatable.
|
static <From,A extends From,R,To extends R> |
Parsers.manyAccum(java.lang.String name,
Accumulatable<From,To> accm,
Parser<A> p)
Greedily runs Parser p repeatedly for 0 or more times.
|
static <R,From> Parser<R> |
Parsers.map(java.lang.String name,
Parser<From> p,
Map<? super From,R> m)
Transform the return value of Parser p to a different value.
|
static <A,B,R> Parser<R> |
Parsers.map2(Parser<A> p1,
Parser<B> p2,
Map2<? super A,? super B,R> m2)
Run 2 Parsers sequentially and transform the return values to a new value.
|
static <A,B,R> Parser<R> |
Parsers.map2(Parser<A> p1,
Parser<B> p2,
Map2<? super A,? super B,R> m2)
Run 2 Parsers sequentially and transform the return values to a new value.
|
static <A,B,R> Parser<R> |
Parsers.map2(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Map2<? super A,? super B,R> m2)
Run 2 Parsers sequentially and transform the return values to a new value.
|
static <A,B,R> Parser<R> |
Parsers.map2(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Map2<? super A,? super B,R> m2)
Run 2 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,R> Parser<R> |
Parsers.map3(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Map3<? super A,? super B,? super C,R> m3)
Run 3 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,R> Parser<R> |
Parsers.map3(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Map3<? super A,? super B,? super C,R> m3)
Run 3 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,R> Parser<R> |
Parsers.map3(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Map3<? super A,? super B,? super C,R> m3)
Run 3 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,R> Parser<R> |
Parsers.map3(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Map3<? super A,? super B,? super C,R> m3)
Run 3 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,R> Parser<R> |
Parsers.map3(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Map3<? super A,? super B,? super C,R> m3)
Run 3 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,R> Parser<R> |
Parsers.map3(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Map3<? super A,? super B,? super C,R> m3)
Run 3 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,R> |
Parsers.map4(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Map4<? super A,? super B,? super C,? super D,R> m4)
Run 4 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <A,B,C,D,E,R> |
Parsers.map5(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5,
Map5<? super A,? super B,? super C,? super D,? super E,R> m5)
Run 5 Parsers sequentially and transform the return values to a new value.
|
static <E,R> Parser<R> |
Parsers.mapn(ArrayFactory<?> af,
Parser<?>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <E,R> Parser<R> |
Parsers.mapn(java.lang.Class<? super E> etype,
Parser<E>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <R> Parser<R> |
Parsers.mapn(Parser<?>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <R> Parser<R> |
Parsers.mapn(java.lang.String name,
ArrayFactory<?> af,
Parser<?>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <E,R> Parser<R> |
Parsers.mapn(java.lang.String name,
java.lang.Class<? super E> etype,
Parser<E>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static <R> Parser<R> |
Parsers.mapn(java.lang.String name,
Parser<?>[] ps,
Mapn<R> mn)
Sequencing of an array of Parser objects.
|
static Parser<?> |
Parsers.not(java.lang.String name,
Parser<?> p)
Succeeds if Parser p fails; Fails otherwise.
|
static Parser<?> |
Parsers.not(java.lang.String name,
Parser<?> p,
java.lang.String errmsg)
Succeeds if Parser p fails; Fails otherwise.
|
static <R> Parser<R> |
Parsers.notConsumed(Parser<R> p)
First run the Parser p, if it succeeds with no input consumed,
notConsumed() succeeds; if it fails, notConsumed() fails; if it succeeds
and consumes input, the input consumption is undone and notConsumed()
fails.
|
static <R> Parser<R> |
Parsers.notConsumed(Parser<R> p,
java.lang.String err)
First run the Parser p, if it succeeds with no input consumed,
notConsumed() succeeds; if it fails, notConsumed() fails; if it succeeds
and consumes input, the input consumption is undone and notConsumed()
fails.
|
static <R> Parser<R> |
Parsers.notConsumed(java.lang.String name,
Parser<R> p)
First run the Parser p, if it succeeds with no input consumed,
notConsumed() succeeds; if it fails, notConsumed() fails; if it succeeds
and consumes input, the input consumption is undone and notConsumed()
fails.
|
static <R> Parser<R> |
Parsers.notConsumed(java.lang.String name,
Parser<R> p,
java.lang.String err)
First run the Parser p, if it succeeds with no input consumed,
notConsumed() succeeds; if it fails, notConsumed() fails; if it succeeds
and consumes input, the input consumption is undone and notConsumed()
fails.
|
static <R> Parser<R> |
Parsers.option(R v,
Parser<R> p)
Runs Parser p, if it fails with no input consumed, return default value v
instead.
|
static <R> Parser<R> |
Parsers.option(java.lang.String name,
R v,
Parser<R> p)
Runs Parser p, if it fails with no input consumed, return default value v
instead.
|
static <R> Parser<R> |
Parsers.optional(Parser<R> p)
Runs Parser p, if it fails with no input consumed, succeed anyway with null as the result.
|
static <R> Parser<R> |
Parsers.optional(java.lang.String name,
Parser<R> p)
Runs Parser p, if it fails with no input consumed, succeed anyway with null as result.
|
static Parser<java.lang.Object> |
Parsers.or(Parser<?>... alternatives)
To create a Parser that runs an array of Parser objects
until one succeeds.
|
static Parser<java.lang.Object> |
Parsers.or(java.lang.String name,
Parser<?>... alternatives)
To create a Parser that runs an array of Parser objects
until one succeeds.
|
static <A,B> Parser<Pair<A,B>> |
Parsers.pair(Parser<A> p1,
Parser<B> p2)
Sequentially run 2 parser objects and collect the results in a Pair object.
|
static <A,B> Parser<Pair<A,B>> |
Parsers.pair(Parser<A> p1,
Parser<B> p2)
Sequentially run 2 parser objects and collect the results in a Pair object.
|
static <A,B> Parser<Pair<A,B>> |
Parsers.pair(java.lang.String name,
Parser<A> p1,
Parser<B> p2)
Sequentially run 2 parser objects and collect the results in a Pair object.
|
static <A,B> Parser<Pair<A,B>> |
Parsers.pair(java.lang.String name,
Parser<A> p1,
Parser<B> p2)
Sequentially run 2 parser objects and collect the results in a Pair object.
|
static <R> Parser<R> |
Parsers.parseTokens(Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(java.lang.String name,
Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(java.lang.String name,
Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(java.lang.String eof_title,
ShowToken show,
Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(java.lang.String eof_title,
ShowToken show,
Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(java.lang.String name,
java.lang.String eof_title,
ShowToken show,
Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.parseTokens(java.lang.String name,
java.lang.String eof_title,
ShowToken show,
Parser<Tok[]> lexer,
Parser<R> p,
java.lang.String module)
The created parser object will take as input the array of Tok
returned from the lexer object, feed it into the Parser object p and run
it, return the result from parser p.
|
static <R> Parser<R> |
Parsers.peek(java.lang.String name,
Parser<R> p)
Look ahead with Parser p.
|
static <R> Parser<R> |
Parsers.plus(Parser<R>... ps)
combine alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2)
2 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2)
2 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3)
3 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3)
3 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3)
3 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R>... ps)
combine alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2)
2 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2)
2 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3)
3 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3)
3 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3)
3 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4)
4 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
static <R> Parser<R> |
Parsers.plus(java.lang.String name,
Parser<R> p1,
Parser<? extends R> p2,
Parser<? extends R> p3,
Parser<? extends R> p4,
Parser<? extends R> p5)
5 alternative parser objects.
|
OperatorTable<E> |
OperatorTable.postfix(Parser<? extends Map<? super E,? extends E>> p,
int precedence)
Adds a postfix unary operator.
|
static <T> Parser<T> |
Parsers.postfix(Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser p and then run Parser op for 0 or more times greedily.
|
static <T> Parser<T> |
Parsers.postfix(Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser p and then run Parser op for 0 or more times greedily.
|
static <T> Parser<T> |
Parsers.postfix(java.lang.String name,
Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser p and then run Parser op for 0 or more times greedily.
|
static <T> Parser<T> |
Parsers.postfix(java.lang.String name,
Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser p and then run Parser op for 0 or more times greedily.
|
OperatorTable<E> |
OperatorTable.prefix(Parser<? extends Map<? super E,? extends E>> p,
int precedence)
Adds a prefix unary operator.
|
static <T> Parser<T> |
Parsers.prefix(Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser op for 0 or more times greedily.
|
static <T> Parser<T> |
Parsers.prefix(Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser op for 0 or more times greedily.
|
static <T> Parser<T> |
Parsers.prefix(java.lang.String name,
Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser op for 0 or more times greedily.
|
static <T> Parser<T> |
Parsers.prefix(java.lang.String name,
Parser<? extends Map<? super T,T>> op,
Parser<? extends T> p)
Runs Parser op for 0 or more times greedily.
|
static Parser<_> |
Scanners.quoted(Parser<_> open,
Parser<_> close,
Parser<?> s)
scans a quoted string that is opened by c1 and closed by c2.
|
static Parser<_> |
Scanners.quoted(Parser<_> open,
Parser<_> close,
Parser<?> s)
scans a quoted string that is opened by c1 and closed by c2.
|
static Parser<_> |
Scanners.quoted(Parser<_> open,
Parser<_> close,
Parser<?> s)
scans a quoted string that is opened by c1 and closed by c2.
|
static Parser<_> |
Scanners.quoted(java.lang.String name,
Parser<_> open,
Parser<_> close,
Parser<?> s)
scans a quoted string that is opened by pattern represented by Scanner open and closed by pattern represented by Scanner close.
|
static Parser<_> |
Scanners.quoted(java.lang.String name,
Parser<_> open,
Parser<_> close,
Parser<?> s)
scans a quoted string that is opened by pattern represented by Scanner open and closed by pattern represented by Scanner close.
|
static Parser<_> |
Scanners.quoted(java.lang.String name,
Parser<_> open,
Parser<_> close,
Parser<?> s)
scans a quoted string that is opened by pattern represented by Scanner open and closed by pattern represented by Scanner close.
|
static <R> Parser<R[]> |
Parsers.repeat(java.lang.String name,
ArrayFactory<R> af,
int n,
Parser<? extends R> p)
Runs Parser p for n times, collect the return values in an array created by
the ArrayFactory object.
|
static <R> Parser<R[]> |
Parsers.repeat(java.lang.String name,
java.lang.Class<R> etype,
int n,
Parser<? extends R> p)
Runs Parser p for n times, collect the return values in an array whose
element type is etype.
|
static Parser<_> |
Parsers.repeat(java.lang.String name,
int n,
Parser<?> p)
Runs Parser p for n times.
|
static <R> R |
Parsers.runParser(java.lang.CharSequence src,
Parser<R> p,
PositionMap pmap,
java.lang.String module)
Runs a character level parser with a CharSequence input.
|
static <R> R |
Parsers.runParser(java.lang.CharSequence src,
Parser<R> p,
java.lang.String module)
Runs a character level parser with a CharSequence input.
|
static <R> R |
Parsers.runParser(Tok[] toks,
int end_index,
Parser<R> p,
ShowToken show,
java.lang.String eof_title,
PositionMap pmap,
java.lang.String module)
Runs a token level Parser object with an array of tokens.
|
static Parser<_> |
Scanners.scanChars(Parser<?> p,
Parser<_> scanner,
java.lang.String module)
After character level parser p succeeds,
subsequently feed the recognized characters to the Parser scanner
for a nested scanning.
|
static Parser<_> |
Scanners.scanChars(Parser<?> p,
Parser<_> scanner,
java.lang.String module)
After character level parser p succeeds,
subsequently feed the recognized characters to the Parser scanner
for a nested scanning.
|
static Parser<_> |
Scanners.scanChars(java.lang.String name,
Parser<?> p,
Parser<_> scanner,
java.lang.String module)
After character level parser p succeeds,
subsequently feed the recognized characters to the Parser scanner
for a nested scanning.
|
static Parser<_> |
Scanners.scanChars(java.lang.String name,
Parser<?> p,
Parser<_> scanner,
java.lang.String module)
After character level parser p succeeds,
subsequently feed the recognized characters to the Parser scanner
for a nested scanning.
|
static <R> Parser<R[]> |
Parsers.sepBy(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static Parser<_> |
Parsers.sepBy(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static Parser<_> |
Parsers.sepBy(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static Parser<_> |
Parsers.sepBy(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static Parser<_> |
Parsers.sepBy(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy1(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy1(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy1(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
Class -> Parser a -> Parser [Object].
|
static <R> Parser<R[]> |
Parsers.sepBy1(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
Class -> Parser a -> Parser [Object].
|
static Parser<_> |
Parsers.sepBy1(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static Parser<_> |
Parsers.sepBy1(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R,A extends R> |
Parsers.sepBy1(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<A> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R,A extends R> |
Parsers.sepBy1(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<A> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepBy1(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
Class -> Parser a -> Parser [Object].
|
static <R> Parser<R[]> |
Parsers.sepBy1(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
Class -> Parser a -> Parser [Object].
|
static Parser<_> |
Parsers.sepBy1(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static Parser<_> |
Parsers.sepBy1(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated by Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy1(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy1(Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(java.lang.String name,
ArrayFactory<R> af,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R[]> |
Parsers.sepEndBy1(java.lang.String name,
java.lang.Class<R> etype,
Parser<?> sep,
Parser<? extends R> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy1(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static Parser<_> |
Parsers.sepEndBy1(java.lang.String name,
Parser<?> sep,
Parser<?> p)
run a series of Parser p pattern that is seperated and optionally ended by
Parser sep pattern.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<R> p3)
Sequencing 3 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<R> p3)
Sequencing 3 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<?> p2,
Parser<R> p3)
Sequencing 3 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<R> p2)
Sequencing 2 parser objects.
|
static <R> Parser<R> |
Parsers.seq(Parser<?> p1,
Parser<R> p2)
Sequencing 2 parser objects.
|
<R> Parser<R> |
Parser.seq(Parser<R> p)
if this parser succeeds,
the returned value is discarded and the next parser is excuted.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<?> p4,
Parser<R> p5)
Sequencing 5 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<?> p3,
Parser<R> p4)
Sequencing 4 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<R> p3)
Sequencing 3 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<R> p3)
Sequencing 3 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<?> p2,
Parser<R> p3)
Sequencing 3 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<R> p2)
Sequencing 2 parser objects.
|
static <R> Parser<R> |
Parsers.seq(java.lang.String name,
Parser<?> p1,
Parser<R> p2)
Sequencing 2 parser objects.
|
<R> Parser<R> |
Parser.seq(java.lang.String name,
Parser<R> p)
if this parser succeeds,
the returned value is discarded and the next parser is excuted.
|
static Parser<java.lang.Object> |
Parsers.seqAll(Parser<?>[] ps)
Sequencing of an array of Parser objects.
|
static Parser<java.lang.Object> |
Parsers.seqAll(java.lang.String name,
Parser<?>[] ps)
Sequencing of an array of Parser objects.
|
static Parser<?> |
Parsers.sequence(Parser<?>... ps)
Sequencing of an array of Parser objects.
|
static Parser<?> |
Parsers.sequence(java.lang.String name,
Parser<?>... ps)
Sequencing of an array of Parser objects.
|
static <R> Parser<R> |
Parsers.shorter(Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.shorter(Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.shorter(java.lang.String name,
Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.shorter(java.lang.String name,
Parser<R> p1,
Parser<R> p2)
Runs two alternative parsers.
|
static <R> Parser<R> |
Parsers.shortest(Parser<R>... ps)
Runs an array of alternative parsers.
|
static <R> Parser<R> |
Parsers.shortest(java.lang.String name,
Parser<R>... ps)
Runs an array of alternative parsers.
|
static <R> Parser<R[]> |
Parsers.some(java.lang.String name,
ArrayFactory<R> af,
int min,
int max,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at least min times and at most max
time.
|
static <R> Parser<R[]> |
Parsers.some(java.lang.String name,
ArrayFactory<R> af,
int max,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at most max time.
|
static <R> Parser<R[]> |
Parsers.some(java.lang.String name,
java.lang.Class<R> etype,
int min,
int max,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at least min times and at most max
times.
|
static <R> Parser<R[]> |
Parsers.some(java.lang.String name,
java.lang.Class<R> etype,
int max,
Parser<? extends R> p)
Greedily runs Parser p repeatedly for at most max times.
|
static <R> Parser<_> |
Parsers.some(java.lang.String name,
int min,
int max,
Parser<?> p)
Greedily runs Parser p repeatedly for at least min times and at most max
time.
|
static Parser<_> |
Parsers.some(java.lang.String name,
int max,
Parser<?> p)
Greedily runs Parser p repeatedly for at most max time.
|
static <From,A extends From,R,To extends R> |
Parsers.someAccum(java.lang.String name,
Accumulatable<From,To> accm,
int min,
int max,
Parser<A> p)
Greedily runs Parser p repeatedly for at least min times and at most max
times, collect the result with the Accumulator object created by
Accumulatable.
|
static <From,A extends From,R,To extends R> |
Parsers.someAccum(java.lang.String name,
Accumulatable<From,To> accm,
int max,
Parser<A> p)
Greedily runs Parser p repeatedly for at most max times, collect the result
with the Accumulator object created by Accumulatable.
|
static <R> Parser<R> |
Parsers.step(java.lang.String name,
int n,
Parser<R> p)
lookahead looks at logical steps.
|
static Parser<java.lang.Object> |
Parsers.sum(Parser<?>... ps)
An array of alternative Parser objects.
|
static Parser<java.lang.Object> |
Parsers.sum(java.lang.String name,
Parser<?>... ps)
An array of alternative Parser objects.
|
static <x,R> ToParser<x,R> |
Parsers.toParser(Parser<R> parser)
Creates a ToParser object by always returning the same Parser object.
|
static <R> Parser<R> |
Parsers.tryParser(Parser<R> p,
Catch<? extends R> hdl)
if Parser p throws an exception, it is handled by Catch hdl.
|
static <R> Parser<R> |
Parsers.tryParser(java.lang.String name,
Parser<R> p,
Catch<? extends R> hdl)
if Parser p throws an exception, it is handled by Catch hdl.
|
static <A,B,C> Parser<Tuple3<A,B,C>> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3)
Sequentially run 3 parser objects and collect the results in a Tuple3 object.
|
static <A,B,C> Parser<Tuple3<A,B,C>> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3)
Sequentially run 3 parser objects and collect the results in a Tuple3 object.
|
static <A,B,C> Parser<Tuple3<A,B,C>> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3)
Sequentially run 3 parser objects and collect the results in a Tuple3 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D,E> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C,D,E> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C,D,E> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C,D,E> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C,D,E> |
Parsers.tuple(Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C> Parser<Tuple3<A,B,C>> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3)
Sequentially run 3 parser objects and collect the results in a Tuple3 object.
|
static <A,B,C> Parser<Tuple3<A,B,C>> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3)
Sequentially run 3 parser objects and collect the results in a Tuple3 object.
|
static <A,B,C> Parser<Tuple3<A,B,C>> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3)
Sequentially run 3 parser objects and collect the results in a Tuple3 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D> Parser<Tuple4<A,B,C,D>> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4)
Sequentially run 4 parser objects and collect the results in a Tuple4 object.
|
static <A,B,C,D,E> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C,D,E> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C,D,E> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C,D,E> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
static <A,B,C,D,E> |
Parsers.tuple(java.lang.String name,
Parser<A> p1,
Parser<B> p2,
Parser<C> p3,
Parser<D> p4,
Parser<E> p5)
Sequentially run 5 parser objects and collect the results in a Tuple5 object.
|
Constructor and Description |
---|
ParsingFrame(java.lang.String module,
int ind,
Pos pos,
Parser parser)
To create a ParsingFrame object.
|