public DslAdapter(string dslFile, string definitionFile, GrammarLanguages grammarLanguage) { RuleBaseBuilder rbb = new RuleBaseBuilder(new Definitions(definitionFile)); string ruleml = null; if (grammarLanguage == GrammarLanguages.EN) { InferenceRules_ENParser ipr = new InferenceRules_ENParser( new CommonTokenStream( new InferenceRules_ENLexer( new ANTLRFileStream(dslFile)))); ipr.rbb = rbb; ipr.rulebase(); ruleml = ipr.rbb.RuleML; } else if (grammarLanguage == GrammarLanguages.FR) { InferenceRules_FRParser ipr = new InferenceRules_FRParser( new CommonTokenStream( new InferenceRules_FRLexer( new ANTLRFileStream(dslFile)))); ipr.rbb = rbb; ipr.rulebase(); ruleml = ipr.rbb.RuleML; } adapter = new RuleML09NafDatalogAdapter(new MemoryStream(new UTF8Encoding().GetBytes(ruleml)), FileAccess.Read); }
public MainForm() { InitializeComponent(); OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Filter = "NxDSL files|*.nxdsl"; openFileDialog.Title = "Load DSL File"; if (DialogResult.OK == openFileDialog.ShowDialog(this)) { string dslFile = openFileDialog.FileName; string definitionFile = dslFile + ".defs"; Definitions definitions = new Definitions(definitionFile); HtmlBuilderTokenSource hbts = new HtmlBuilderTokenSource( new InferenceRules_ENLexer( new ANTLRFileStream(dslFile)), definitions); InferenceRules_ENParser ipr = new InferenceRules_ENParser(new CommonTokenStream(hbts)); ipr.rbb = new RuleBaseBuilder(definitions); try { ipr.rulebase(); } catch(Exception re) { hbts.PrependToHtml("<font color='#FF0000'><b>" + re.Message + "</b></font><br/><br/>"); } this.Html = hbts.Html; } else { this.Html = "Next time, select a DSL file!"; } }
public MainForm() { InitializeComponent(); OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Filter = "NxDSL files|*.nxdsl"; openFileDialog.Title = "Load DSL File"; if (DialogResult.OK == openFileDialog.ShowDialog(this)) { string dslFile = openFileDialog.FileName; string definitionFile = dslFile + ".defs"; Definitions definitions = new Definitions(definitionFile); HtmlBuilderTokenSource hbts = new HtmlBuilderTokenSource( new InferenceRules_ENLexer( new ANTLRFileStream(dslFile)), definitions); InferenceRules_ENParser ipr = new InferenceRules_ENParser(new CommonTokenStream(hbts)); ipr.rbb = new RuleBaseBuilder(definitions); try { ipr.rulebase(); } catch (Exception re) { hbts.PrependToHtml("<font color='#FF0000'><b>" + re.Message + "</b></font><br/><br/>"); } this.Html = hbts.Html; } else { this.Html = "Next time, select a DSL file!"; } }