summaryrefslogtreecommitdiff
path: root/ruby_1_9_3/lib/rexml/parsers/lightparser.rb
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-05-14 11:39:21 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-05-14 11:39:21 +0000
commite76eb06feb024828034379797129d92522e28516 (patch)
tree1326c625c233ba2554043203a7697f5e3d4c49e5 /ruby_1_9_3/lib/rexml/parsers/lightparser.rb
parentaa6e98139c8e1ea442fb2182341aaa08ff55b529 (diff)
parentbede15ac5e701ed08f3fc64c2dba03d3f393c652 (diff)
add tag v1_9_3_426v1_9_3_426
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tags/v1_9_3_426@40737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby_1_9_3/lib/rexml/parsers/lightparser.rb')
-rw-r--r--ruby_1_9_3/lib/rexml/parsers/lightparser.rb58
1 files changed, 0 insertions, 58 deletions
diff --git a/ruby_1_9_3/lib/rexml/parsers/lightparser.rb b/ruby_1_9_3/lib/rexml/parsers/lightparser.rb
deleted file mode 100644
index 81041681c2..0000000000
--- a/ruby_1_9_3/lib/rexml/parsers/lightparser.rb
+++ /dev/null
@@ -1,58 +0,0 @@
-require 'rexml/parsers/streamparser'
-require 'rexml/parsers/baseparser'
-require 'rexml/light/node'
-
-module REXML
- module Parsers
- class LightParser
- 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 = [ :document ]
- while true
- event = @parser.pull
- case event[0]
- when :end_document
- break
- 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
- 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