예제 #1
0
파일: Scaner.cs 프로젝트: adrfrank/FBF
 public ScanResult ScanFromFile(string filename)
 {
     sr = null;
     if (!File.Exists(filename))
     {
         sr = new ScanResult();
         AddError("El archivo no existe", -1);
         return sr;
     }
     var input = File.ReadAllLines(filename);
     sr = Scan(input);
     return sr;
 }
예제 #2
0
파일: Scaner.cs 프로젝트: adrfrank/FBF
 public ScanResult Scan(string input)
 {
     sr = new ScanResult();
     entrada = input.TrimEnd();
     idx = 0;
     while (idx < entrada.Length)
     {
         try
         {
             var t = nextToken();
             if (t != null)
                 sr.Tokens.Add(t);
         }
         catch (Exception ex)
         {
             AddError("Error in parser: " + ex.Message);
         }
     }
     return sr;
 }
예제 #3
0
파일: Scaner.cs 프로젝트: adrfrank/FBF
 public ScanResult Scan(string[] input)
 {
     sr = new ScanResult();
     for (int i = 0; i < input.Length; i++)
     {
         entrada = input[i].TrimEnd();
         idx = 0;
         while (idx < entrada.Length)
         {
             try
             {
                 var t = nextToken(i);
                 if (t != null && t.Type != TokenType.NoToken)
                     sr.Tokens.Add(t);
                 else
                     break;
             }
             catch (Exception ex)
             {
                 AddError("Error in scanner: " + ex.Message, i);
             }
         }
     }
     return sr;
 }
예제 #4
0
 public CompilerResult(ScanResult scanresult, ParserResult parseresult)
 {
     scanResult = scanresult;
     parseResult = parseresult;
 }