com.thaiopensource.relaxng.impl
Class FindElementFunction

java.lang.Object
  extended by com.thaiopensource.relaxng.impl.AbstractPatternFunction
      extended by com.thaiopensource.relaxng.impl.FindElementFunction
All Implemented Interfaces:
PatternFunction

 class FindElementFunction
extends AbstractPatternFunction


Field Summary
private  ValidatorPatternBuilder builder
           
private  Name name
           
private  Pattern pattern
           
private  Hashtable processed
           
private  int specificity
           
 
Constructor Summary
private FindElementFunction(ValidatorPatternBuilder builder, Name name)
           
 
Method Summary
private  Object caseBinary(BinaryPattern p)
           
 Object caseChoice(ChoicePattern p)
           
 Object caseElement(ElementPattern p)
           
 Object caseGroup(GroupPattern p)
           
 Object caseInterleave(InterleavePattern p)
           
 Object caseOneOrMore(OneOrMorePattern p)
           
 Object caseOther(Pattern p)
           
static Pattern findElement(ValidatorPatternBuilder builder, Name name, Pattern start)
           
private  boolean haveProcessed(Pattern p)
           
 
Methods inherited from class com.thaiopensource.relaxng.impl.AbstractPatternFunction
caseAfter, caseAttribute, caseData, caseDataExcept, caseEmpty, caseError, caseList, caseNotAllowed, caseRef, caseText, caseValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

builder

private final ValidatorPatternBuilder builder

name

private final Name name

processed

private final Hashtable processed

specificity

private int specificity

pattern

private Pattern pattern
Constructor Detail

FindElementFunction

private FindElementFunction(ValidatorPatternBuilder builder,
                            Name name)
Method Detail

findElement

public static Pattern findElement(ValidatorPatternBuilder builder,
                                  Name name,
                                  Pattern start)

haveProcessed

private boolean haveProcessed(Pattern p)

caseBinary

private Object caseBinary(BinaryPattern p)

caseGroup

public Object caseGroup(GroupPattern p)
Specified by:
caseGroup in interface PatternFunction
Overrides:
caseGroup in class AbstractPatternFunction

caseInterleave

public Object caseInterleave(InterleavePattern p)
Specified by:
caseInterleave in interface PatternFunction
Overrides:
caseInterleave in class AbstractPatternFunction

caseChoice

public Object caseChoice(ChoicePattern p)
Specified by:
caseChoice in interface PatternFunction
Overrides:
caseChoice in class AbstractPatternFunction

caseOneOrMore

public Object caseOneOrMore(OneOrMorePattern p)
Specified by:
caseOneOrMore in interface PatternFunction
Overrides:
caseOneOrMore in class AbstractPatternFunction

caseElement

public Object caseElement(ElementPattern p)
Specified by:
caseElement in interface PatternFunction
Overrides:
caseElement in class AbstractPatternFunction

caseOther

public Object caseOther(Pattern p)
Specified by:
caseOther in class AbstractPatternFunction