Exemple #1
0
            public override void GenerateCode(ICodeGen gen)
            {
                this.arguments.Reverse();
                foreach (Expression arg in this.arguments)
                {
                    arg.GenerateCode(gen);
                }
                this.arguments.Reverse();

                this.operand.GenerateCode(gen);
                gen.Call((Symbols.Func) this.operand.GetType());

                for (int i = 0; i < this.arguments.Count; ++i)
                {
                    gen.Pop();
                }
            }
            public override void GenerateCode(ICodeGen gen)
            {
                this.arguments.Reverse();
                foreach (Expression arg in this.arguments)
                {
                    arg.GenerateCode(gen);
                }
                this.arguments.Reverse();

                this.operand.GenerateCode(gen);
                gen.Call((Symbols.Func)this.operand.GetType());

                for (int i = 0; i < this.arguments.Count; ++i )
                {
                    gen.Pop();
                }
            }