class Verku::Stream

Attributes

content[RW]
html[R]
listener[RW]

Public Class Methods

new(content, listener) click to toggle source
# File lib/verku/stream.rb, line 6
def initialize(content, listener)
  @content  = content
  @listener = listener
  @html = Nokogiri::HTML.parse(content)
end

Public Instance Methods

emit(node) click to toggle source
# File lib/verku/stream.rb, line 23
def emit(node)
  listener.send(:tag, node) if node.name =~ /h[1-6]/
end
parse() click to toggle source
# File lib/verku/stream.rb, line 12
def parse
  traverse(html)
end
traverse(node) click to toggle source
# File lib/verku/stream.rb, line 16
def traverse(node)
  node.children.each do |child|
    emit(child)
    traverse(child)
  end
end