# REXML::Parsers::LightParser (Class)

In: | rexml/parsers/lightparser.rb
Parent: | Object

## Methods

new parse rewind

## Public Class methods

new(stream)

[Source]

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

## Public Instance methods

rewind()

[Source]

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

parse()

[Source]

    # File rexml/parsers/lightparser.rb, line 18
                            def parse
                                    root = context = [ :document ]
                                    while true
                                            event = @parser.pull
                                            case event[0]
                                            when :end_document
                                                    break
                                            when :end_doctype
                                                    context = context[1]
                                            when :start_element, :start_doctype
                                                    new_node = event
                                                    context << new_node
                                                    new_node[1,0] = [context]
                                                    context = new_node
                                            when :end_element, :end_doctype
                                                    context = context[1]
                                            else
                                                    new_node = event
                                                    context << new_node
                                                    new_node[1,0] = [context]
                                            end
                                    end
                                    root
                            end

[Validate]