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| ... }