| author | David Anderson <dvander@alliedmods.net> |
| Fri Jun 08 01:09:17 2007 +0000 (2007-06-08) | |
| changeset 922 | 980941c525fa |
| parent 824 | 0e9a2c98c9aa |
| child 2019 | 9f473114a511 |
| permissions | -rw-r--r-- |
| dvander@824 | 1 |
using System; |
| dvander@824 | 2 |
using System.Collections.Generic; |
| dvander@824 | 3 |
using System.Text; |
| dvander@824 | 4 |
|
| dvander@824 | 5 |
namespace incparser |
| dvander@824 | 6 |
{ |
| dvander@824 | 7 |
class Program |
| dvander@824 | 8 |
{ |
| dvander@824 | 9 |
static void Main(string[] args) |
| dvander@824 | 10 |
{ |
| dvander@824 | 11 |
Environment.Exit(SubMain(args)); |
| dvander@824 | 12 |
} |
| dvander@824 | 13 |
|
| dvander@824 | 14 |
static int SubMain(string[] args) |
| dvander@824 | 15 |
{ |
| dvander@824 | 16 |
if (args.Length < 1) |
| dvander@824 | 17 |
{ |
| dvander@824 | 18 |
Console.WriteLine("Usage: incparser <infile>"); |
| dvander@824 | 19 |
return 1; |
| dvander@824 | 20 |
} |
| dvander@824 | 21 |
|
| dvander@824 | 22 |
IncParser inc = null; |
| dvander@824 | 23 |
try |
| dvander@824 | 24 |
{ |
| dvander@824 | 25 |
inc = new IncParser(args[0]); |
| dvander@824 | 26 |
} |
| dvander@824 | 27 |
catch (ParseException e) |
| dvander@824 | 28 |
{ |
| dvander@824 | 29 |
Console.WriteLine("Initial browsing failed: " + e.Message); |
| dvander@824 | 30 |
return 1; |
| dvander@824 | 31 |
} |
| dvander@824 | 32 |
catch (System.Exception e) |
| dvander@824 | 33 |
{ |
| dvander@824 | 34 |
Console.WriteLine("Failed to read file: " + e.Message); |
| dvander@824 | 35 |
return 1; |
| dvander@824 | 36 |
} |
| dvander@824 | 37 |
|
| dvander@824 | 38 |
ParseWriter pw = new ParseWriter(); |
| dvander@824 | 39 |
|
| dvander@824 | 40 |
try |
| dvander@824 | 41 |
{ |
| dvander@824 | 42 |
inc.Parse(pw); |
| dvander@824 | 43 |
} |
| dvander@824 | 44 |
catch (System.Exception e) |
| dvander@824 | 45 |
{ |
| dvander@824 | 46 |
Console.WriteLine("Error parsing file (line " + inc.GetLineNumber() + "): " + e.Message); |
| dvander@824 | 47 |
return 1; |
| dvander@824 | 48 |
} |
| dvander@824 | 49 |
|
| dvander@824 | 50 |
if (pw.Level != 0) |
| dvander@824 | 51 |
{ |
| dvander@824 | 52 |
Console.WriteLine("Fatal parse error detected; unable to complete output."); |
| dvander@824 | 53 |
return 1; |
| dvander@824 | 54 |
} |
| dvander@824 | 55 |
|
| dvander@824 | 56 |
Console.Write(pw.Contents); |
| dvander@824 | 57 |
Console.Write("\n"); |
| dvander@824 | 58 |
|
| dvander@824 | 59 |
return 0; |
| dvander@824 | 60 |
} |
| dvander@824 | 61 |
} |
| dvander@824 | 62 |
} |