Exemple #1
0
 private void DropStackToTag()
 {
     if (HtmlNodeType.EndTag == _nestedTokens.Top.Type)
     {
         Token token = _nestedTokens.Pop();
         while ((HtmlNodeType.Tag != _nestedTokens.Top.Type) &&
                (0 != String.Compare(_nestedTokens.Top.Name, token.Name, true)))
         {
             _nestedTokens.Pop();
         }
         _nestedTokens.Pop();
     }
 }
Exemple #2
0
        /// <summary>
        /// Writes the end element (closing tag).
        /// </summary>
        /// <remarks>The implementation of <see cref="HtmlWriter"/> should
        /// maintain a stack of elements (tags) written. The implementation of
        /// this method should use this stak to retrieve the closing tag.
        /// </remarks>
        /// <seealso cref="WriteStartElement"/>
        public override void WriteEndElement()
        {
            CheckClosed();

            _writer.Write("</");
            _writer.Write(_nestedTokens.Top.Name);
            _writer.Write('>');

            FormatFlags flags = GetFlagsForTagName(_nestedTokens.Top.Name);

            if (0 != (FormatFlags.EndNewLine & flags))
            {
                _writer.WriteLine();
            }

            _nestedTokens.Pop();
        }