private void Parse(Grammar grammar, string script, bool expectError) {
   var compiler = new Compiler(grammar);
   var context = new CompilerContext(compiler);
   var source = new SourceStream(script, "source");
   AstNode root = compiler.Parse(context, source);
   compiler.AnalyzeCode(root, context);
   if (!expectError && context.Errors.Count > 0)
     Assert.Fail("Unexpected source error(s) found: " + context.Errors[0].Message);
 }
 private void Evaluate(Grammar grammar, string script, bool expectError, object result) {
   var compiler = new Compiler(grammar);
   var context = new CompilerContext(compiler);
   var source = new SourceStream(script, "source"); 
   AstNode root = compiler.Parse(context, source);
   compiler.AnalyzeCode(root, context); 
   if (!expectError && context.Errors.Count > 0)
     Assert.Fail("Unexpected source error(s) found: " + context.Errors[0].Message);
   var evalContext = new EvaluationContext(context.Runtime, root);
   root.Evaluate(evalContext);
   Assert.AreEqual(evalContext.CurrentResult, result, "Evaluation result is null, expected " + result);
 }
 public ScriptEngine(Grammar grammar) {
   Compiler = new Compiler(grammar);
   Language = Compiler.Language;
 }
Exemple #4
0
 internal static void ClearCurrentGrammar() {
   _currentGrammar = null; 
 }
Exemple #5
0
 public Scanner(ScannerData data) {
   _data = data;
   _grammar = _data.GrammarData.Grammar;
 }
 public LanguageData(Grammar grammar) {
   Grammar = grammar; 
 }
Exemple #7
0
 public Scanner(ScannerData data)
 {
     _data    = data;
     _grammar = _data.GrammarData.Grammar;
 }