private void ToolStripButton_RUN_LOGO_Click(object sender, EventArgs e) { string InputCode = PROGRAM_TEXTBOX.Text; var logo_PSER = new LogoParser(); var outputStr = logo_PSER._Parse(ref InputCode); LOGO_TreeView.Nodes.Clear(); loadLogoTree(ref outputStr); LogoTextOut.Text = EXT.FormatJsonOutput(outputStr.ToJson()); LOGO_ERRORS.Text = ""; if (logo_PSER.ParserErrors is object) { if (logo_PSER.ParserErrors.Count > 0) { LOGO_ERRORS.Text = "Error in Syntax :" + Constants.vbNewLine; foreach (var item in logo_PSER.ParserErrors) { LOGO_ERRORS.Text += Constants.vbNewLine + item + Constants.vbNewLine; } if (outputStr.Body is object) { foreach (var item in outputStr.Body) { Small_PL_TextboxErrors.ForeColor = Color.Red; LOGO_ERRORS.Text += Constants.vbNewLine + item.ToJson() + Constants.vbNewLine; } } else { } } else { LOGO_ERRORS.ForeColor = Color.Green; LOGO_ERRORS.Text = "all Passed sucessfully" + Constants.vbNewLine; } } }
public static ICollection <BaseLogoCommand> CreateAndParse(string programText) { var parser = new LogoParser(new LogoScanner(programText), symbolTable); return(parser.ParseLogoProgram()); }
private static void TestParseProgram(string program) { var parser = new LogoParser(new LogoScanner(program), symbolTable); parser.ParseLogoProgram(); }