public override string ToString(int indent)
        {
            StringBuilder builder = new StringBuilder();

            builder.Indent(indent).AppendLine("While:");
            builder.Indent(indent + 1).AppendLine("Condition:");
            builder.AppendLine(condition.ToString(indent + 2));
            builder.Indent(indent + 1).AppendLine("Block:");
            builder.AppendLine(block.ToString(indent + 2));
            return(builder.ToString());
        }
        public override string ToString(int indent)
        {
            StringBuilder builder = new StringBuilder();

            builder.Indent(indent).AppendLine("Condition:");
            builder.Indent(indent + 1).AppendLine("True:");
            builder.AppendLine(trueBlock.ToString(indent + 2));
            if (falseBlock != null)
            {
                builder.Indent(indent + 1).AppendLine("False:");
                builder.AppendLine(falseBlock.ToString(indent + 2));
            }
            return(builder.ToString());
        }
        public override string ToString(int indent)
        {
            StringBuilder builder = new StringBuilder();

            builder.Indent(indent).AppendLine("For:");
            builder.Indent(indent + 1).AppendLine("Initializer:");
            builder.AppendLine(initializer.ToString(indent + 2));
            builder.Indent(indent + 1).AppendLine("Condition:");
            builder.AppendLine(condition.ToString(indent + 2));
            builder.Indent(indent + 1).AppendLine("Increment:");
            builder.AppendLine(increment.ToString(indent + 2));
            builder.Indent(indent + 1).AppendLine("Body:");
            builder.AppendLine(body.ToString(indent + 2));
            return(builder.ToString());
        }
        public override string ToString(int indent)
        {
            StringBuilder builder = new StringBuilder();

            builder.Indent(indent).AppendLine("Method:");
            builder.Indent(indent + 1).AppendLine("Name:");
            builder.Indent(indent + 2).AppendLine(MethodReference.Name);
            builder.Indent(indent + 1).AppendLine("Modifiers:");
            builder.Indent(indent + 2).AppendLine(modifiers.ToString());
            builder.Indent(indent + 1).AppendLine("Return:");
            builder.Indent(indent + 2).AppendLine(MethodReturnType.FullName);
            builder.Indent(indent + 1).AppendLine("Params:");
            foreach (var param in MethodReference.Parameters)
            {
                builder.Indent(indent + 2).AppendFormat("{0} {1}{2}", param.ParameterType.FullName, param.Name, Environment.NewLine);
            }
            builder.Indent(indent + 1).AppendLine("Body:");
            builder.AppendLine(parsedBody.ToString(indent + 2));
            return(builder.ToString());
        }