static void Main(string[] args) { Parser p = new Parser(); string[] codeLines = p.readFile("code.ivaron"); //Read code LinkedList <Token> list = new LinkedList <Token>(); try { list = Tokenizer.tokenize(codeLines); //Tokenize code } catch (CompilerException e) { foreach (string error in e.Errors) { Console.WriteLine(error); } } if (list.Count > 0) { LinkedListNode <Token> token = list.First; while (token != null) { Console.Write(token.Value.value + " "); if (token.Value.value == "{" || token.Value.value == ";") { Console.Write("\n"); } token = token.Next; } } if (list.Count > 0) { LinkedListNode <Token> token = list.First; while (token != null) { Console.Write(token.Value.type + " "); if (token.Value.value == "{" || token.Value.value == ";") { Console.Write("\n"); } token = token.Next; } } NodeLinkedList nll = TheCompiler.compile(list.First); VirtualMachine vm = new VirtualMachine(); vm.Run(nll); // Keep the console window open in debug mode. Console.WriteLine("Press return key to exit."); System.Console.ReadKey(); }
private void regeneratePrecompiledHeadersToolStripMenuItem_Click(object sender, EventArgs e) { TheCompiler.GeneratePrecompiledHeaders(); }
void CreateMenus() { MenuItem m = new MenuItem("File"); m.Submenu = fileMenu; mainMenu.Append(m); m = new MenuItem("New"); m.Activated += (s, e) => Application.Quit(); fileMenu.Append(m); m = new MenuItem("Open"); m.Activated += (s, e) => Application.Quit(); fileMenu.Append(m); m = new MenuItem("Save"); m.Activated += (s, e) => Application.Quit(); fileMenu.Append(m); m = new MenuItem("Save As..."); m.Activated += (s, e) => Application.Quit(); fileMenu.Append(m); fileMenu.Append(new SeparatorMenuItem()); m = new MenuItem("Quit"); m.Activated += (s, e) => Application.Quit(); fileMenu.Append(m); m = new MenuItem("Edit"); m.Submenu = editMenu; mainMenu.Append(m); m = new MenuItem("Copy"); m.Activated += (s, e) => Application.Quit(); editMenu.Append(m); m = new MenuItem("Cut"); m.Activated += (s, e) => Application.Quit(); editMenu.Append(m); m = new MenuItem("Paste"); m.Activated += (s, e) => Application.Quit(); editMenu.Append(m); //fileMenu.Append(new SeparatorMenuItem()); m = new MenuItem("Copy with picture environment"); m.Activated += (s, e) => Application.Quit(); editMenu.Append(m); m = new MenuItem("Compilation"); m.Submenu = compileMenu; mainMenu.Append(m); m = new MenuItem("Compile"); m.Activated += (s, e) => TheVM.TheDocument.Recompile(); compileMenu.Append(m); m = abortCompilationToolStripMenuItem = new MenuItem("Abort Compilation"); m.Activated += (s, e) => TheCompiler.Instance.AbortCompilation(); compileMenu.Append(m); m = new MenuItem("Regenerate precompiled headers"); m.Activated += (s, e) => TheCompiler.GeneratePrecompiledHeaders(); compileMenu.Append(m); //fileMenu.Append(new SeparatorMenuItem()); m = new MenuItem("Recompile snippets"); m.Activated += (s, e) => { }; // todo compileMenu.Append(m); m = new MenuItem("Settings"); m.Submenu = settingsMenu; mainMenu.Append(m); m = new MenuItem("Options"); m.Activated += (s, e) => Application.Quit(); settingsMenu.Append(m); m = new MenuItem("?"); m.Submenu = helpMenu; mainMenu.Append(m); m = new MenuItem("Help"); m.Activated += (s, e) => Application.Quit(); helpMenu.Append(m); }