コード例 #1
0
        public virtual bool compile(ScriptType rootParseNodeType, NamespaceObject environment, Object selfValue, List <ParameterExpression> rootParameters, out ESBlock block)
        {
            Expression <FuncNs.Func <Object> > lambda;

            if (compile(rootParseNodeType, environment, selfValue, rootParameters, out lambda))
            {
                var function = lambda.Compile();
                if (function == null)
                {
                    block = null;
                    return(false);
                }
                block = (ESBlock)function();
                return(true);
            }

            block = null;
            return(false);
        }
コード例 #2
0
 public virtual bool compileSelfExpression(NamespaceObject environment, Object selfValue, List <ParameterExpression> rootParameters, out ESBlock block)
 {
     return(compile(ScriptType.SelfExpression, environment, selfValue, rootParameters, out block));
 }
コード例 #3
0
ファイル: ESObjectVisitor.cs プロジェクト: vlastik01/cSharp
 public override T applyToCompiledBlock(ESBlock operand)
 {
     return(operation.applyToCompiledBlock(operand));
 }
コード例 #4
0
 public virtual bool compile(NamespaceObject environment, Object selfValue, out ESBlock block)
 {
     return(compile(ScriptType.BlockDeclaration, environment, selfValue, null, out block));
 }
コード例 #5
0
ファイル: ESObjectVisitor.cs プロジェクト: vlastik01/cSharp
 public virtual T applyToCompiledBlock(ESBlock operand)
 {
     return(applyToESObject(operand));
 }