summaryrefslogtreecommitdiff
path: root/ruby_1_9_3/lib/rexml/parsers/ultralightparser.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ruby_1_9_3/lib/rexml/parsers/ultralightparser.rb')
-rw-r--r--ruby_1_9_3/lib/rexml/parsers/ultralightparser.rb56
1 files changed, 0 insertions, 56 deletions
diff --git a/ruby_1_9_3/lib/rexml/parsers/ultralightparser.rb b/ruby_1_9_3/lib/rexml/parsers/ultralightparser.rb
deleted file mode 100644
index 7dd8172802..0000000000
--- a/ruby_1_9_3/lib/rexml/parsers/ultralightparser.rb
+++ /dev/null
@@ -1,56 +0,0 @@
-require 'rexml/parsers/streamparser'
-require 'rexml/parsers/baseparser'
-
-module REXML
- module Parsers
- class UltraLightParser
- def initialize stream
- @stream = stream
- @parser = REXML::Parsers::BaseParser.new( stream )
- end
-
- def add_listener( listener )
- @parser.add_listener( listener )
- end
-
- def rewind
- @stream.rewind
- @parser.stream = @stream
- end
-
- 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
- end
-
- # An element is an array. The array contains:
- # 0 The parent element
- # 1 The tag name
- # 2 A hash of attributes
- # 3..-1 The child elements
- # An element is an array of size > 3
- # Text is a String
- # PIs are [ :processing_instruction, target, data ]
- # Comments are [ :comment, data ]
- # DocTypes are DocType structs
- # The root is an array with XMLDecls, Text, DocType, Array, Text
- end
-end