Class HTML5::InTableBodyPhase
In: lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb
Parent: Phase
Phase XmlElementPhase InTablePhase RootElementPhase AfterHeadPhase InHeadPhase AfterFramesetPhase XmlRootPhase InTableBodyPhase InitialPhase InFramesetPhase InColumnGroupPhase InCaptionPhase BeforeHeadPhase InSelectPhase TrailingEndPhase AfterBodyPhase InCellPhase InBodyPhase InRowPhase XhmlRootPhase Exception SerializeError EOF AssertionError ParseError HTMLSanitizer HTMLTokenizer XMLParser XHTMLParser HTMLParser String EncodingBytes HTMLSerializer XHTMLSerializer TreeWalkers::Base NonRecursiveTreeWalker TreeWalker TreeWalker Base TreeWalker Element DocumentFragment Node CommentNode DocumentType TextNode Document Base::Node Node Node Base::TreeBuilder TreeBuilder TreeBuilder TreeBuilder Element DocumentFragment CommentNode DocumentType TextNode Document Element DocumentFragment CommentNode DocumentType TextNode Document Enumerable TestData Base InjectMetaCharset OptionalTagFilter WhitespaceFilter HTMLSanitizeFilter HTMLSanitizeModule SimpleDelegator HTMLInputStream EncodingParser ContentAttrParser Node TreeBuilder lib/feed_tools/vendor/html5/lib/html5/html5parser/trailing_end_phase.rb lib/feed_tools/vendor/html5/lib/html5/constants.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/after_frameset_phase.rb lib/feed_tools/vendor/html5/lib/html5/liberalxmlparser.rb lib/feed_tools/vendor/html5/lib/html5/serializer/xhtmlserializer.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_caption_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_frameset_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/initial_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb lib/feed_tools/vendor/html5/lib/html5/serializer/htmlserializer.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/root_element_phase.rb lib/feed_tools/vendor/html5/lib/html5/tokenizer.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_select_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/before_head_phase.rb lib/feed_tools/vendor/html5/lib/html5/inputstream.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_row_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_cell_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_body_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_head_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/after_body_phase.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/after_head_phase.rb lib/feed_tools/vendor/html5/lib/html5/sanitizer.rb lib/feed_tools/vendor/html5/lib/html5/html5parser/in_column_group_phase.rb lib/feed_tools/vendor/html5/lib/html5/treewalkers/base.rb lib/feed_tools/vendor/html5/lib/html5/treewalkers/hpricot.rb Hpricot TokenConstructor lib/feed_tools/vendor/html5/lib/html5/treewalkers/rexml.rb REXML lib/feed_tools/vendor/html5/lib/html5/treewalkers/simpletree.rb SimpleTree TreeWalkers HTMLSanitizeModule lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb Hpricot lib/feed_tools/vendor/html5/lib/html5/treebuilders/base.rb Base lib/feed_tools/vendor/html5/lib/html5/treebuilders/rexml.rb REXML lib/feed_tools/vendor/html5/lib/html5/treebuilders/simpletree.rb SimpleTree TreeBuilders lib/feed_tools/vendor/html5/tests/preamble.rb TestSupport Sniffer lib/feed_tools/vendor/html5/lib/html5/filters/whitespace.rb lib/feed_tools/vendor/html5/lib/html5/filters/optionaltags.rb lib/feed_tools/vendor/html5/lib/html5/filters/base.rb lib/feed_tools/vendor/html5/lib/html5/filters/inject_meta_charset.rb lib/feed_tools/vendor/html5/lib/html5/filters/sanitizer.rb Filters HTML5 dot/m_60_0.png

Methods

Public Instance methods

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 66
66:     def endTagIgnore(name)
67:       parse_error("unexpected-end-tag-in-table-body",
68:             {"name" => name})
69:     end

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 71
71:     def endTagOther(name)
72:       @parser.phases[:inTable].processEndTag(name)
73:     end

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 55
55:     def endTagTable(name)
56:       if in_scope?('tbody', true) or in_scope?('thead', true) or in_scope?('tfoot', true)
57:         clearStackToTableBodyContext
58:         endTagTableRowGroup(@tree.open_elements.last.name)
59:         @parser.phase.processEndTag(name)
60:       else
61:         # inner_html case
62:         parse_error
63:       end
64:     end

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 44
44:     def endTagTableRowGroup(name)
45:       if in_scope?(name, true)
46:         clearStackToTableBodyContext
47:         @tree.open_elements.pop
48:         @parser.phase = @parser.phases[:inTable]
49:       else
50:         parse_error("unexpected-end-tag-in-table-body",
51:                 {"name" => name})
52:       end
53:     end

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 12
12:     def processCharacters(data)
13:       @parser.phases[:inTable].processCharacters(data)
14:     end

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 40
40:     def startTagOther(name, attributes)
41:       @parser.phases[:inTable].processStartTag(name, attributes)
42:     end

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 22
22:     def startTagTableCell(name, attributes)
23:       parse_error("unexpected-cell-in-table-body", {"name" => name})
24:       startTagTr('tr', {})
25:       @parser.phase.processStartTag(name, attributes)
26:     end

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 28
28:     def startTagTableOther(name, attributes)
29:       # XXX AT Any ideas on how to share this with endTagTable?
30:       if in_scope?('tbody', true) or in_scope?('thead', true) or in_scope?('tfoot', true)
31:         clearStackToTableBodyContext
32:         endTagTableRowGroup(@tree.open_elements.last.name)
33:         @parser.phase.processStartTag(name, attributes)
34:       else
35:         # inner_html case
36:         parse_error
37:       end
38:     end

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 16
16:     def startTagTr(name, attributes)
17:       clearStackToTableBodyContext
18:       @tree.insert_element(name, attributes)
19:       @parser.phase = @parser.phases[:inRow]
20:     end

Protected Instance methods

[Source]

    # File lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb, line 77
77:     def clearStackToTableBodyContext
78:       until %w[tbody tfoot thead html].include?(name = @tree.open_elements.last.name)
79:         parse_error("unexpected-implied-end-tag-in-table",
80:                 {"name" => @tree.open_elements.last.name})
81:         @tree.open_elements.pop
82:       end
83:     end

[Validate]