Google Data APIs Client Library (1.38.0)
com.google.gdata.util.parser
Class Repeat<T>
java.lang.Object
com.google.gdata.util.parser.Parser<T>
com.google.gdata.util.parser.Repeat<T>
- Type Parameters:
T -
public class Repeat<T>
- extends Parser<T>
The Repeat parser returns a successful match if its
subject parser matches at least min times, but not
more than max times. The Repeat parser is used to
implement the Parser.star() and Parser.plus()
methods by specifying appropriate values for min and
max.
The following matches a string of 1 to 3 letters:
Parse p = Chset.ALPHA.repeat(1, 3);
p.parse("") -> no match
p.parse("a") -> matches "a"
p.parse("aa") -> matches "aa"
p.parse("aaa") -> matches "aaa"
p.parse("aaaa") -> matches "aaa"
| Fields inherited from class com.google.gdata.util.parser.Parser |
NO_MATCH |
|
Constructor Summary |
Repeat(Parser<T> subject,
int min)
Class constructor that is used for creating a Repeat object
that will match its subject min or more times. |
Repeat(Parser<T> subject,
int min,
int max)
Class constructor that is used for creating a Repeat object
that will match its subject at least min times
but not more than max times. |
|
Method Summary |
int |
parse(char[] buf,
int start,
int end,
T data)
Matches the subject parser against the prefix of the buffer
(buf[start,end)) being parsed if the subject
parser matches at least min times and not more than
max times in sequence. |
| Methods inherited from class com.google.gdata.util.parser.Parser |
action, alternative, difference, intersection, list, optional, parse, parse, parse, plus, repeat, repeat, sequence, sequence, sequence, sequence, star |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Repeat
public Repeat(Parser<T> subject,
int min)
- Class constructor that is used for creating a
Repeat object
that will match its subject min or more times.
- Parameters:
subject - The Parse that this parser will repeatedly
match.min - The minimum number of times the subject parser
must match.
Repeat
public Repeat(Parser<T> subject,
int min,
int max)
- Class constructor that is used for creating a
Repeat object
that will match its subject at least min times
but not more than max times. Specifying -1 for
max causes the parser to match as many times as possible.
- Parameters:
subject - The Parse that this parser will repeatedly
match.min - The minimum number of times the subject parser
must match.max - The maximum number of times the subject parser can
match.
parse
public int parse(char[] buf,
int start,
int end,
T data)
- Matches the
subject parser against the prefix of the buffer
(buf[start,end)) being parsed if the subject
parser matches at least min times and not more than
max times in sequence.
- Specified by:
parse in class Parser<T>
- Parameters:
buf - The character array to match against.start - The start offset of data within the character array to match
against.end - The end offset of data within the character array to match
against.data - User defined object that is passed to
Callback.handle when an Action fires.- See Also:
Parser.parse(char[], int, int, T)