Example #1
0
        public Function(ExprFactory exprFactory,
                        Location location,
                        string name,
                        FunctionInfo info,
                        Arg [] args,
                        Statement [] statements)
        {
            super(location);

            _name = name.intern();
            _info = info;
            _info.setFunction(this);
            _isReturnsReference = info.isReturnsReference();

            _args = new Arg[args.length];

            System.arraycopy(args, 0, _args, 0, args.length);

            _statement = exprFactory.createBlock(location, statements);

            setGlobal(info.isPageStatic());
            setClosure(info.isClosure());

            _isStatic = true;
        }
        static ParsedLayout Parse(string text, LayoutMode mode, ExprFactory factory)
        {
            var exprs  = new LayoutParser(factory).Parse(text);
            var result = ParseCore(exprs, mode);

            result.Layout = text;

            return(result);
        }
 public ObjectMethod(ExprFactory exprFactory,
                     Location location,
                     InterpretedClassDef quercusClass,
                     string name,
                     FunctionInfo info,
                     Arg [] argList,
                     Statement [] statementList)
 {
     super(exprFactory, location, name, info, argList, statementList);
     _quercusClass = quercusClass;
 }
Example #4
0
        public void Register(ExprFactory factory, string opCode, Type outputType, params Type[] inputTypes)
        {
            var key = new Key
            {
                OpCode     = opCode,
                InputTypes = inputTypes,
                OutputType = outputType
            };

            _registry.Add(key, factory);
        }
        /**
         * Constructor.
         */
        private ModuleContext(ClassLoader loader)
        {
            _loader = loader;

            _marshalFactory = new MarshalFactory(this);
            _exprFactory    = new ExprFactory();

            string [] empty = new String[0];
            _stdClassDef = new InterpretedClassDef("stdClass", null, empty, empty);
            _stdClass    = new QuercusClass(this, _stdClassDef, null);

            _staticClasses.put(_stdClass.getName(), _stdClassDef);
        }
Example #6
0
        public MethodDeclaration(ExprFactory exprFactory,
                                 Location location,
                                 ClassDef qClass,
                                 string name,
                                 FunctionInfo info,
                                 Arg [] argList)
        {
            super(exprFactory, location,
                  name, info, argList,
                  new Statement[0]);

            _qClass = qClass;
        }
Example #7
0
 public void Register <T>(ExprFactory factory, string opCode, params Type[] inputTypes)
 {
     Register(factory, opCode, typeof(T), inputTypes);
 }
 GlobalScope(ExprFactory exprFactory)
 {
     _exprFactory = exprFactory;
 }
 public LayoutParser(ExprFactory factory)
 {
     this._factory = factory;
 }
        FunctionScope(ExprFactory exprFactory, Scope parent)
        {
            super(parent);

            _exprFactory = exprFactory;
        }