コード例 #1
0
ファイル: ParserGen.cs プロジェクト: jlyonsmith/CocoR
 public ParserGen(Parser parser)
 {
     tab = parser.tab;
     errors = parser.errors;
     trace = parser.trace;
     buffer = parser.scanner.buffer;
     errorNr = -1;
     usingPos = null;
 }
コード例 #2
0
ファイル: ScannerOutput.cs プロジェクト: blucz/coco-r-fsharp
	public ScannerOutput(StreamWriter gen, Tab tab, bool ignoreCase, bool hasCtxMoves, State firstState, Comment firstComment) {
	    this.gen=gen;
	    this.tab=tab;
	    this.ignoreCase=ignoreCase;
	    this.hasCtxMoves=hasCtxMoves;
	    this.firstState=firstState;
	    this.firstComment=firstComment;
   	    keywords.Add("-->namespace",GenNamespace());
	    keywords.Add("-->declarations",GenDeclarations());
	    keywords.Add("-->initialization",GenInitialization());
	    keywords.Add("-->casing1",GenCasing1());
	    keywords.Add("-->casing2",GenCasing2());
	    keywords.Add("-->comments",GenComments());
	    keywords.Add("-->literals",GenLiterals());
        keywords.Add("-->scan3", GenScan3());
        keywords.Add("-->scan1",GenScan1());
	    keywords.Add("-->scan2",GenScan2());
	    keywords.Add("$$$",GenDollarDollarDollar());
	}
コード例 #3
0
ファイル: DFA.cs プロジェクト: Xpitfire/CrossCompile
 public void ShiftWith(CharSet s, Tab tab)
 {
     if (s.Elements() == 1) {
     typ = Node.chr; sym = s.First();
     } else {
     CharClass c = tab.FindCharClass(s);
     if (c == null) c = tab.NewCharClass("#", s); // class with dummy name
     typ = Node.clas; sym = c.n;
     }
 }
コード例 #4
0
ファイル: DFA.cs プロジェクト: Xpitfire/CrossCompile
 public DFA(Parser parser)
 {
     this.parser = parser;
     tab = parser.tab;
     errors = parser.errors;
     trace = parser.trace;
     firstState = null; lastState = null; lastStateNr = -1;
     firstState = NewState();
     firstMelted = null; firstComment = null;
     ignoreCase = false;
     dirtyDFA = false;
     hasCtxMoves = false;
 }
コード例 #5
0
ファイル: DFA.cs プロジェクト: Xpitfire/CrossCompile
 public Generator(Tab tab)
 {
     this.tab = tab;
 }
コード例 #6
0
ファイル: DFA.cs プロジェクト: Xpitfire/CrossCompile
 public CharSet Symbols(Tab tab)
 {
     CharSet s;
     if (typ == Node.clas)
     s = tab.CharClassSet(sym).Clone();
     else {
     s = new CharSet(); s.Set(sym);
     }
     return s;
 }
コード例 #7
0
 protected AbstractParserGen(Parser parser)
 {
     this.errors = parser.errors;
     this.buffer = parser.scanner.buffer;
     this.tab = parser.tab;
 }
コード例 #8
0
ファイル: ParserGen.cs プロジェクト: vadimskipin/coco-csharp
        Tab tab; // other Coco objects

        #endregion Fields

        #region Constructors

        public ParserGen(Parser parser)
        {
            tab = parser.tab;
            errorNr = -1;
        }
コード例 #9
0
ファイル: ParserOutput.cs プロジェクト: blucz/coco-r-fsharp
 public ParserOutput(Tab tab, Errors errors, TextWriter trace, Buffer buffer, Position uspos)
 {
     this.tab = tab;
     this.errors = errors;
     this.trace = trace;
     this.buffer = buffer;
     this.usingPos = uspos;
     errorNr = -1;
 }