Class | REXML::Parsers::UltraLightParser
In: | rexml/parsers/ultralightparser.rb
Parent: | Object

### Methods

add_listener new parse rewind

### Public Class methods

new(stream)

[Source]

    # File rexml/parsers/ultralightparser.rb, line 7
                            def initialize stream
                                    @stream = stream
                                    @parser = REXML::Parsers::BaseParser.new( stream )
                            end

### Public Instance methods

add_listener( listener )

[Source]

    # File rexml/parsers/ultralightparser.rb, line 12
          def add_listener( listener )
            @parser.add_listener( listener )
          end

parse()

[Source]

    # File 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, :doctype
                                                    context << event
                                                    event[1,0] = [context]
                                                    context = event
                                            when :end_element
                                                    context = context[1]
                                            else
                                                    context << event
                                            end
                                    end
                                    root
                            end

rewind()

[Source]

    # File rexml/parsers/ultralightparser.rb, line 16
          def rewind
            @stream.rewind
            @parser.stream = @stream
          end

[Validate]