Class: REXML::Parsers::UltraLightParser
| Relationships & Source Files | |
| Inherits: | Object | 
| Defined in: | lib/rexml/parsers/ultralightparser.rb | 
Class Method Summary
- .new(stream) ⇒ UltraLightParser constructor
Instance Method Summary
Constructor Details
    .new(stream)  ⇒ UltraLightParser 
  
# File 'lib/rexml/parsers/ultralightparser.rb', line 7
def initialize stream @stream = stream @parser = REXML::Parsers::BaseParser.new( stream ) end
Instance Method Details
#add_listener(listener)
[ GitHub ]# File 'lib/rexml/parsers/ultralightparser.rb', line 12
def add_listener( listener ) @parser.add_listener( listener ) end
#parse
[ GitHub ]# File 'lib/rexml/parsers/ultralightparser.rb', line 21
def parse root = context = [] while true event = @parser.pull case event[0] when :end_document break when :end_doctype context = context[1] when :start_element, :start_doctype context << event event[1,0] = [context] context = event when :end_element context = context[1] else context << event end end root end
#rewind
[ GitHub ]# File 'lib/rexml/parsers/ultralightparser.rb', line 16
def rewind @stream.rewind @parser.stream = @stream end