org.parboiled.matchers
Class OneOrMoreMatcher

java.lang.Object
  extended by org.parboiled.trees.ImmutableGraphNode<Matcher>
      extended by org.parboiled.matchers.AbstractMatcher
          extended by org.parboiled.matchers.OneOrMoreMatcher
All Implemented Interfaces:
java.lang.Cloneable, Matcher, Rule, GraphNode<Matcher>

public class OneOrMoreMatcher
extends AbstractMatcher

A Matcher that repeatedly tries its submatcher against the input. Succeeds if its submatcher succeeds at least once.


Field Summary
 Matcher subMatcher
           
 
Constructor Summary
OneOrMoreMatcher(Rule subRule)
           
 
Method Summary
<R> R
accept(MatcherVisitor<R> visitor)
          Accepts the given matcher visitor.
 T defaultLabel(java.lang.String defaultLabel)
           
 java.lang.String getLabel()
           
 boolean hasCustomLabel()
           
 boolean match(MatcherContext context)
          Tries a match on the given MatcherContext.
 
Methods inherited from class org.parboiled.matchers.AbstractMatcher
areMismatchesMemoed, areSubnodesSuppressed, getSubContext, getTag, isNodeSkipped, isNodeSuppressed, label, memoMismatches, setTag, skipNode, suppressNode, suppressSubnodes, toString
 
Methods inherited from class org.parboiled.trees.ImmutableGraphNode
getChildren
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.parboiled.trees.GraphNode
getChildren
 

Field Detail

subMatcher

public final Matcher subMatcher
Constructor Detail

OneOrMoreMatcher

public OneOrMoreMatcher(Rule subRule)
Method Detail

match

public boolean match(MatcherContext context)
Description copied from interface: Matcher
Tries a match on the given MatcherContext.

Parameters:
context - the MatcherContext
Returns:
true if the match was successful

accept

public <R> R accept(MatcherVisitor<R> visitor)
Description copied from interface: Matcher
Accepts the given matcher visitor.

Parameters:
visitor - the visitor
Returns:
the value returned by the given visitor

getLabel

public java.lang.String getLabel()
Specified by:
getLabel in interface Matcher
Overrides:
getLabel in class AbstractMatcher
Returns:
the label of the matcher (which is identical to the label of the Rule this matcher matches)

hasCustomLabel

public boolean hasCustomLabel()
Specified by:
hasCustomLabel in interface Matcher
Overrides:
hasCustomLabel in class AbstractMatcher
Returns:
true if this matcher has been assigned a custom label

defaultLabel

public T defaultLabel(java.lang.String defaultLabel)