private void bLex_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(tts.Textbox.Text)) { ScriptScanner scanner = new ScriptScanner(); scanner.OnReadTokenCallback += new ScriptScanner.OnReadTokenCallbackHandler(scanner_OnReadTokenCallback); scanner.Load(tts.Textbox.Text); } }
void scanner_OnReadTokenCallback(ScriptScanner sender, System.Collections.Generic.List<ScriptEngine.Core.Token> tokens, ScriptEngine.Core.Token token) { TreeNode node = new TreeNode(); node.Text = token.Content + " - " + token.Type; //TreeNode type = new TreeNode(); //type.Text = lex.Type.ToString(); //node.Nodes.Add(type); tts.TreeView.Nodes.Add(node); tts.TreeView.ExpandAll(); }
private void bParse_Click(object sender, EventArgs e) { tResult.Text = ""; ScriptScanner scanner = new ScriptScanner(); scanner.Load(tScript.Text); foreach (Lex i in scanner.Lexes) { Output(false, i.Content.ToString(), i.Type.ToString()); } //TokenCollection tokens = engine.Read(tScript.Text); //if (tokens != null) //{ // foreach (Token token in tokens) // { // Output(token.LineNumber + ":\t" + token.TokenType + " " + token.Content); // } // engine.Parse(tokens); //} }
protected void ScriptScanner_OnReadCallback(ScriptScanner sender, Token lexes, Lex lex) { if (!curtToken.Add(lex)) { Tokens.Add(curtToken); if (OnReadTokenCallback != null) { OnReadTokenCallback(this, Tokens, curtToken); } curtToken = new Token(); curtToken.Add(lex); } }