public ScriptEvaluatorLambda( string scriptName, string[] parameterNames, ExprEvaluator[] parameters, Coercer coercer, ExpressionScriptCompiled compiled) : base(scriptName, parameterNames, parameters, coercer) { _scriptAction = compiled.ScriptAction; }
private ExpressionScriptCompiled CompileScript( string dialect, string scriptName, string scriptExpression, string[] scriptParameterNames, Type[] parameterTypes, ExpressionScriptCompiled scriptCompiledBuf, ImportServiceCompileTime importService, ScriptCompiler scriptingCompiler) { return new ExpressionScriptCompiledImpl( scriptingCompiler.Compile( Script.OptionalDialect ?? _defaultDialect, Script)); }
private static void ValidateScript( ExpressionScriptProvided script, string defaultDialect, ScriptCompiler scriptCompiler) { var dialect = script.OptionalDialect ?? defaultDialect; if (dialect == null) { throw new ExprValidationException( "Failed to determine script dialect for script '" + script.Name + "', please configure a default dialect or provide a dialect explicitly"); } scriptCompiler.VerifyScript(dialect, script); #if false ExpressionScriptCompiled compiledBuf = JSR223Helper .VerifyCompileScript(script.Name, script.Expression, dialect); script.CompiledBuf = compiledBuf; #endif if (script.ParameterNames.Length != 0) { var parameters = new HashSet <String>(); foreach (var param in script.ParameterNames) { if (parameters.Contains(param)) { throw new ExprValidationException( "Invalid script parameters for script '" + script.Name + "', parameter '" + param + "' is defined more then once"); } parameters.Add(param); } } }
public static ExpressionScriptCompiled CompileScript( string dialect, string scriptName, string expression, string[] parameterNames, Type[] evaluationTypes, ExpressionScriptCompiled optionalPrecompiled, ImportService importService, ScriptCompiler scriptingCompiler) { #if NOT_USED ExpressionScriptCompiled compiled; #endif if (optionalPrecompiled != null) { return optionalPrecompiled; } dialect ??= DEFAULT_DIALECT; return new ExpressionScriptCompiledImpl( scriptingCompiler.Compile( dialect ?? DEFAULT_DIALECT, new ExpressionScriptProvided(scriptName, expression, parameterNames, null, false, null, dialect))); }
public ExpressionScriptProvided WithCompiledBuf(ExpressionScriptCompiled compiledBuf) { CompiledBuf = compiledBuf; return this; }