コード例 #1
0
        public override void Format(PositionedWriter writer, bool semi)
        {
            writer.Write("<");
            this.Name.Format(writer, semi);
            var indented = false;

            foreach (var attr in this.Attributes)
            {
                writer.Write(" ");
                if (writer.ReachLineEnd())
                {
                    if (!indented)
                    {
                        indented = true;
                        writer.IndentForward();
                    }
                    writer.NewLine();
                    writer.Indent();
                }
                attr.Format(writer, semi);
            }
            if (indented)
            {
                writer.IndentBack();
            }
            if (this.SelfClosing)
            {
                writer.Write("/>");
            }
            else
            {
                writer.Write(">");
            }
        }
コード例 #2
0
        public override void Format(PositionedWriter writer, bool semi)
        {
            writer.Write("[");
            var first    = true;
            var indented = false;

            foreach (var elem in this.Elements)
            {
                if (first)
                {
                    first = false;
                }
                else
                {
                    writer.Write(", ");
                }
                if (writer.ReachLineEnd())
                {
                    if (!indented)
                    {
                        indented = true;
                        writer.IndentForward();
                    }
                    writer.NewLine();
                    writer.Indent();
                }
                elem.Format(writer, semi);
            }
            if (indented)
            {
                writer.IndentBack();
            }
            writer.Write("]");
        }
コード例 #3
0
        public override void Format(PositionedWriter writer, bool semi)
        {
            writer.Write(this.Kind);
            writer.Write(" ");
            var first    = true;
            var indented = false;

            foreach (var d in this.Declarations)
            {
                if (first)
                {
                    first = false;
                }
                else
                {
                    writer.Write(", ");
                }
                if (writer.ReachLineEnd())
                {
                    if (!indented)
                    {
                        indented = true;
                        writer.IndentForward();
                    }
                    writer.NewLine();
                    writer.Indent();
                }
                d.Format(writer, semi);
            }
            if (indented)
            {
                writer.IndentBack();
            }
            if (semi)
            {
                writer.Write(";");
            }
        }