java.util.regex
Class Pattern.GroupCurly

java.lang.Object
  extended byjava.util.regex.Pattern.Node
      extended byjava.util.regex.Pattern.GroupCurly
Enclosing class:
Pattern

static final class Pattern.GroupCurly
extends Pattern.Node

Handles the curly-brace style repetition with a specified minimum and maximum occurrences in deterministic cases. This is an iterative optimization over the Prolog and Loop system which would handle this in a recursive way. The * quantifier is handled as a special case. This class saves group settings so that the groups are unset when backing off of a group match.


Field Summary
(package private)  Pattern.Node atom
           
(package private)  int cmax
           
(package private)  int cmin
           
(package private)  int groupIndex
           
(package private)  int localIndex
           
(package private)  Pattern.Node next
           
(package private)  int type
           
 
Constructor Summary
(package private) Pattern.GroupCurly(Pattern.Node node, int cmin, int cmax, int type, int local, int group)
           
 
Method Summary
(package private)  Pattern.Node dup(boolean not)
           
(package private)  boolean match(Matcher matcher, int i, CharSequence seq)
          This method implements the classic accept node.
(package private)  boolean match0(Matcher matcher, int i, int j, CharSequence seq)
           
(package private)  boolean match1(Matcher matcher, int i, int j, CharSequence seq)
           
(package private)  boolean match2(Matcher matcher, int i, int j, CharSequence seq)
           
(package private)  boolean study(Pattern.TreeInfo info)
          This method is good for all zero length assertions.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

atom

Pattern.Node atom

type

int type

cmin

int cmin

cmax

int cmax

localIndex

int localIndex

groupIndex

int groupIndex

next

Pattern.Node next
Constructor Detail

Pattern.GroupCurly

Pattern.GroupCurly(Pattern.Node node,
                   int cmin,
                   int cmax,
                   int type,
                   int local,
                   int group)
Method Detail

match

boolean match(Matcher matcher,
              int i,
              CharSequence seq)
Description copied from class: Pattern.Node
This method implements the classic accept node.

Overrides:
match in class Pattern.Node

match0

boolean match0(Matcher matcher,
               int i,
               int j,
               CharSequence seq)

match1

boolean match1(Matcher matcher,
               int i,
               int j,
               CharSequence seq)

match2

boolean match2(Matcher matcher,
               int i,
               int j,
               CharSequence seq)

study

boolean study(Pattern.TreeInfo info)
Description copied from class: Pattern.Node
This method is good for all zero length assertions.

Overrides:
study in class Pattern.Node

dup

Pattern.Node dup(boolean not)