class
   Lexbor::Parser
 
  - Lexbor::Parser
- Reference
- Object
Defined in:
lexbor/parser.crConstructors
- .new(ec : EncodingConverter, page : String)
- .new(ec : EncodingConverter, io : IO)
- .new(page : String)
- .new(slice : Slice)
- .new(io : IO)
Instance Method Summary
- #body
- #body!
- 
        #create_node(tag_id : Lexbor::Lib::TagIdT)
        
          Create a new node 
- #create_node(tag_sym : Symbol)
- #create_node(tag_name : String)
- #create_text_node(text : String)
- 
        #css(*args, **options)
        
          Css selectors, see Node#css 
- 
        #css(*args, **options, &)
        
          Css selectors, see Node#css 
- #document
- #document!
- #finalize
- #free
- #head
- #head!
- #html
- #html!
- 
        #nodes(tag_id : Lexbor::Lib::TagIdT)
        
          Top level node filter (select all nodes in tree with tag_id) returns Lexbor::Iterator::Collection equal with myhtml.root!.scope.nodes(...) 
- 
        #nodes(tag_sym : Symbol)
        
          Top level node filter (select all nodes in tree with tag_sym) returns Lexbor::Iterator::Collection equal with myhtml.root!.scope.nodes(...) 
- 
        #nodes(tag_str : String)
        
          Top level node filter (select all nodes in tree with tag_sym) returns Lexbor::Iterator::Collection equal with myhtml.root!.scope.nodes(...) 
- #root
- #root!
- 
        #to_html(*args, **options)
        
          Convert html tree to html string, see Node#to_html 
- 
        #to_html(*args, **options, &)
        
          Convert html tree to html string, see Node#to_html 
- #to_pretty_html(*args, **options)
- #to_pretty_html(*args, **options, &)
Constructor Detail
Instance Method Detail
Create a new node
Note: this does not add the node to any document or tree. It only
creates the object that can then be appended or inserted. See
Node#append_child, Node#insert_after, and Node#insert_before
doc = Lexbor::Parser.new ""
div = doc.create_node(:div)
a = doc.create_node(:a)
div.to_html # <div></div>
a.to_html   # <a></a>Top level node filter (select all nodes in tree with tag_id) returns Lexbor::Iterator::Collection equal with myhtml.root!.scope.nodes(...)
myhtml.nodes(Lexbor::Lib::TagIdT::LXB_TAG_DIV).each { |node| ... }
Top level node filter (select all nodes in tree with tag_sym) returns Lexbor::Iterator::Collection equal with myhtml.root!.scope.nodes(...)
myhtml.nodes(:div).each { |node| ... }
Top level node filter (select all nodes in tree with tag_sym) returns Lexbor::Iterator::Collection equal with myhtml.root!.scope.nodes(...)
myhtml.nodes("div").each { |node| ... }