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 lexbor.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 lexbor.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 lexbor.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 lexbor.root!.scope.nodes(...)
lexbor.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 lexbor.root!.scope.nodes(...)
lexbor.nodes(:div).each { |node| ... }
Top level node filter (select all nodes in tree with tag_sym) returns Lexbor::Iterator::Collection equal with lexbor.root!.scope.nodes(...)
lexbor.nodes("div").each { |node| ... }