summaryrefslogtreecommitdiff
path: root/Compiler/Program.cs
diff options
context:
space:
mode:
authorMelodi <62381002+Melodi17@users.noreply.github.com>2025-08-09 09:45:22 +1000
committerMelodi <62381002+Melodi17@users.noreply.github.com>2025-08-09 09:45:22 +1000
commit7f334796e8d0619dc744b1345a7b7b73a27220f9 (patch)
tree709c9a7df920d8eb1e779df4f878a25596303f17 /Compiler/Program.cs
parentd36d51429d604f0ab3b2076c4c05e28ebf9b52c5 (diff)
added method calling and for loops
Diffstat (limited to 'Compiler/Program.cs')
-rw-r--r--Compiler/Program.cs31
1 files changed, 19 insertions, 12 deletions
diff --git a/Compiler/Program.cs b/Compiler/Program.cs
index fdd8722..9259205 100644
--- a/Compiler/Program.cs
+++ b/Compiler/Program.cs
@@ -22,17 +22,24 @@ class Program
Environment.CurrentDirectory = Path.GetDirectoryName(options.InputFile) ?? Environment.CurrentDirectory;
options.InputFile = Path.GetFileName(options.InputFile);
- AntlrFileStream inputStream = new(options.InputFile);
- CGrammarLexer lexer = new(inputStream);
- lexer.RemoveErrorListeners();
-
- ITokenStream tokenStream = new BufferedTokenStream(lexer);
- CGrammarParser parser = new(tokenStream);
- parser.RemoveErrorListeners();
-
- CCompilerVisitor compiler = new(options.CommentCompilationMode);
- IEnumerable<string> result = compiler.Compile(parser.program());
-
- File.WriteAllLines(options.OutputFile, result);
+ try
+ {
+ AntlrFileStream inputStream = new(options.InputFile);
+ CGrammarLexer lexer = new(inputStream);
+ lexer.RemoveErrorListeners();
+
+ ITokenStream tokenStream = new BufferedTokenStream(lexer);
+ CGrammarParser parser = new(tokenStream);
+ parser.RemoveErrorListeners();
+
+ CCompilerVisitor compiler = new(options.CommentCompilationMode);
+ IEnumerable<string> result = compiler.Compile(parser.program());
+
+ File.WriteAllLines(options.OutputFile, result);
+ }
+ catch (CompilerException ex)
+ {
+ Console.WriteLine($"{ex.Message}");
+ }
}
} \ No newline at end of file