fr.umlv.tatoo.cc.lexer.regex.pattern
Class RegexGrammarEvaluator

java.lang.Object
  extended by fr.umlv.tatoo.cc.lexer.regex.pattern.RegexGrammarEvaluator
All Implemented Interfaces:
fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

public class RegexGrammarEvaluator
extends Object
implements fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator


Constructor Summary
RegexGrammarEvaluator(Map<String,Regex> macroes, Encoding charset)
           
 
Method Summary
 void acceptMacro()
           
 void acceptPattern()
           
 Regex followDollar()
           
 Regex followEmpty()
           
 Regex followRegex(Regex regex)
           
 Regex getFollow()
           
 Regex getMacro()
           
 Regex getMain()
           
 boolean hatEmpty()
           
 boolean hatPresent()
           
 void initial(boolean hatOpt, Regex main, Regex follow)
           
 ArrayList<CharacterInterval> interval(CharacterInterval interval)
           
 char intervalLetter(char intervalLetter)
           
 ArrayList<CharacterInterval> intervals(ArrayList<CharacterInterval> intervals, CharacterInterval interval)
           
 CharacterInterval intervalSet(char specialOrIntervalLetter, char specialOrIntervalLetter2)
           
 CharacterInterval intervalSingleton(char specialOrIntervalLetter)
           
 char intervalSpecialLetter(char specialLetter)
           
 boolean isBeginningOfLineRequired()
           
 void macro(Regex regex)
           
 Regex mainRegex(Regex regex)
           
 char normalLetter(char normalLetter)
           
 char normalSpecialLetter(char specialLetter)
           
 Regex regexAny()
           
 Regex regexAtLeast(Regex regex, int num)
           
 Regex regexCat(Regex regex, Regex regex2)
           
 Regex regexInterval(ArrayList<CharacterInterval> intervals)
           
 Regex regexIntervalNegate(ArrayList<CharacterInterval> intervals)
           
 Regex regexLetter(char specialOrNormalLetter)
           
 Regex regexMacro(String name)
           
 Regex regexOptional(Regex regex)
           
 Regex regexOr(Regex regex, Regex regex2)
           
 Regex regexPar(Regex regex)
           
 Regex regexPlus(Regex regex)
           
 Regex regexRange(Regex regex, int from, int to)
           
 Regex regexStar(Regex regex)
           
 Regex regexString(Regex string)
           
 Regex regexTimes(Regex regex, int num)
           
 Regex specialOrStringLetter(Regex specialOrStringLetter)
           
 Regex string(Regex string, Regex specialOrStringLetter)
           
 Regex stringLetter(char stringLetter)
           
 Regex stringSpecialLetter(char specialLetter)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RegexGrammarEvaluator

public RegexGrammarEvaluator(Map<String,Regex> macroes,
                             Encoding charset)
Method Detail

initial

public void initial(boolean hatOpt,
                    Regex main,
                    Regex follow)
Specified by:
initial in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

mainRegex

public Regex mainRegex(Regex regex)
Specified by:
mainRegex in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

macro

public void macro(Regex regex)
Specified by:
macro in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

acceptMacro

public void acceptMacro()
Specified by:
acceptMacro in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

acceptPattern

public void acceptPattern()
Specified by:
acceptPattern in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

followEmpty

public Regex followEmpty()
Specified by:
followEmpty in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

followDollar

public Regex followDollar()
Specified by:
followDollar in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

followRegex

public Regex followRegex(Regex regex)
Specified by:
followRegex in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

hatEmpty

public boolean hatEmpty()
Specified by:
hatEmpty in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

hatPresent

public boolean hatPresent()
Specified by:
hatPresent in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexMacro

public Regex regexMacro(String name)
Specified by:
regexMacro in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexAny

public Regex regexAny()
Specified by:
regexAny in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexLetter

public Regex regexLetter(char specialOrNormalLetter)
Specified by:
regexLetter in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

normalLetter

public char normalLetter(char normalLetter)
Specified by:
normalLetter in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

normalSpecialLetter

public char normalSpecialLetter(char specialLetter)
Specified by:
normalSpecialLetter in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexString

public Regex regexString(Regex string)
Specified by:
regexString in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

string

public Regex string(Regex string,
                    Regex specialOrStringLetter)
Specified by:
string in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

specialOrStringLetter

public Regex specialOrStringLetter(Regex specialOrStringLetter)
Specified by:
specialOrStringLetter in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

stringSpecialLetter

public Regex stringSpecialLetter(char specialLetter)
Specified by:
stringSpecialLetter in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

stringLetter

public Regex stringLetter(char stringLetter)
Specified by:
stringLetter in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexInterval

public Regex regexInterval(ArrayList<CharacterInterval> intervals)
Specified by:
regexInterval in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexIntervalNegate

public Regex regexIntervalNegate(ArrayList<CharacterInterval> intervals)
Specified by:
regexIntervalNegate in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

interval

public ArrayList<CharacterInterval> interval(CharacterInterval interval)
Specified by:
interval in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

intervals

public ArrayList<CharacterInterval> intervals(ArrayList<CharacterInterval> intervals,
                                              CharacterInterval interval)
Specified by:
intervals in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

intervalSet

public CharacterInterval intervalSet(char specialOrIntervalLetter,
                                     char specialOrIntervalLetter2)
Specified by:
intervalSet in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

intervalSingleton

public CharacterInterval intervalSingleton(char specialOrIntervalLetter)
Specified by:
intervalSingleton in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

intervalSpecialLetter

public char intervalSpecialLetter(char specialLetter)
Specified by:
intervalSpecialLetter in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

intervalLetter

public char intervalLetter(char intervalLetter)
Specified by:
intervalLetter in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexStar

public Regex regexStar(Regex regex)
Specified by:
regexStar in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexPlus

public Regex regexPlus(Regex regex)
Specified by:
regexPlus in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexOptional

public Regex regexOptional(Regex regex)
Specified by:
regexOptional in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexRange

public Regex regexRange(Regex regex,
                        int from,
                        int to)
Specified by:
regexRange in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexAtLeast

public Regex regexAtLeast(Regex regex,
                          int num)
Specified by:
regexAtLeast in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexTimes

public Regex regexTimes(Regex regex,
                        int num)
Specified by:
regexTimes in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexPar

public Regex regexPar(Regex regex)
Specified by:
regexPar in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexCat

public Regex regexCat(Regex regex,
                      Regex regex2)
Specified by:
regexCat in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

regexOr

public Regex regexOr(Regex regex,
                     Regex regex2)
Specified by:
regexOr in interface fr.umlv.tatoo.cc.lexer.regex.pattern.tools.GrammarEvaluator

getFollow

public Regex getFollow()

getMain

public Regex getMain()

isBeginningOfLineRequired

public boolean isBeginningOfLineRequired()

getMacro

public final Regex getMacro()