Exemple #1
0
        public override CompiledFragment Compile(CompiledMethod method)
        {
            if (FirstChild == null)
            {
                return(null);
            }

            // Apply the current line:
            method.CurrentLine = LineNumber;

            try{
                // Compile operator chains: (d=a+b+c;)
                CompilationServices.CompileOperators(this, method);

                // Compile the now singular operator:
                CompiledFragment cFrag = FirstChild.Compile(method) as CompiledFragment;

                return(cFrag);
            }catch (CompilationException e) {
                if (e.LineNumber == -1)
                {
                    // Setup line number:
                    e.LineNumber = LineNumber;
                }

                // Rethrow:
                throw e;
            }
        }