public override Statement Clone()
        {
            BlockStatement clonedBody = Body != null?body.Clone() as BlockStatement : null;

            ForEachStatement result = new ForEachStatement(Variable.Clone() as VariableDeclarationExpression, Collection.Clone(), clonedBody, mappedConditionInstructions, mappedFinallyInstructions);

            CopyParentAndLabel(result);
            return(result);
        }
        public override Statement Clone()
        {
            BlockStatement clonedBody = body != null?body.Clone() as BlockStatement : null;

            WhileStatement result = new WhileStatement(Condition.Clone(), clonedBody);

            CopyParentAndLabel(result);
            return(result);
        }
        public override Statement Clone()
        {
            BlockStatement clonedBody = body != null?body.Clone() as BlockStatement : null;

            UsingStatement result = new UsingStatement(Expression.Clone(), clonedBody, mappedFinallyInstructions);

            CopyParentAndLabel(result);
            return(result);
        }
        public override Statement Clone()
        {
            BlockStatement clonedBody = body != null?body.Clone() as BlockStatement : null;

            FixedStatement result = new FixedStatement(Expression.Clone(), clonedBody);

            CopyParentAndLabel(result);
            return(result);
        }
        public override Statement Clone()
        {
            BlockStatement clonedBody = body != null?body.Clone() as BlockStatement : null;

            ForStatement result = new ForStatement(Initializer.Clone(), Condition.Clone(), Increment.Clone(), clonedBody);

            result.ConditionBlock = this.ConditionBlock;
            CopyParentAndLabel(result);
            return(result);
        }
示例#6
0
        public override Statement Clone()
        {
            BlockStatement clonedBody = null;

            if (body != null)
            {
                clonedBody = body.Clone() as BlockStatement;
            }
            LockStatement result = new LockStatement(Expression.Clone(), clonedBody, this.mappedFinallyInstructions);

            CopyParentAndLabel(result);
            return(result);
        }
        public override Statement Clone()
        {
            BlockStatement clonnedTry = @try != null? @try.Clone() as BlockStatement : null;

            BlockStatement clonnedfault = fault != null?fault.Clone() as BlockStatement : null;

            FinallyClause clonnedFinally = @finally != null? @finally.Clone() as FinallyClause : null;

            TryStatement result = new TryStatement(clonnedTry, clonnedfault, clonnedFinally);

            foreach (CatchClause @catch in this.catchClauses)
            {
                result.AddToCatchClauses((CatchClause)@catch.Clone());
            }
            CopyParentAndLabel(result);
            return(result);
        }
        public override Statement Clone()
        {
            BlockStatement clonedThen = null;

            if (then != null)
            {
                clonedThen = then.Clone() as BlockStatement;
            }

            BlockStatement clonedElse = null;

            if (@else != null)
            {
                clonedElse = @else.Clone() as BlockStatement;
            }

            IfStatement result = new IfStatement(Condition.Clone(), clonedThen, clonedElse);

            CopyParentAndLabel(result);
            return(result);
        }