diff options
author | kou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-01-31 16:10:53 +0000 |
---|---|---|
committer | kou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-01-31 16:10:53 +0000 |
commit | ff680dde5ad1dc8ade7b7d1ead38c5c23f28697c (patch) | |
tree | 088915bab077d20c8928cccfca6fb0eb2cf36347 /lib/rss/xmlparser.rb | |
parent | 26ec6ec4d1ed582d293c5ea5783b565825e63d1b (diff) | |
download | ruby-ff680dde5ad1dc8ade7b7d1ead38c5c23f28697c.tar.gz ruby-ff680dde5ad1dc8ade7b7d1ead38c5c23f28697c.tar.xz ruby-ff680dde5ad1dc8ade7b7d1ead38c5c23f28697c.zip |
* lib/rss/parser.rb (RSS::Parser): added @@default_parser. Used
XML parser became selectable.
* test/rss/test_parser.rb: added tests for RSS::Parser.default_parser.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@5594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rss/xmlparser.rb')
-rw-r--r-- | lib/rss/xmlparser.rb | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/rss/xmlparser.rb b/lib/rss/xmlparser.rb index 32061805a..5a62ce00a 100644 --- a/lib/rss/xmlparser.rb +++ b/lib/rss/xmlparser.rb @@ -13,7 +13,7 @@ end module RSS - class XMLParser < ::XML::Parser + class REXMLLikeXMLParser < ::XML::Parser include XML::Encoding_ja @@ -39,12 +39,16 @@ module RSS end - class Parser < BaseParser + class XMLParserParser < BaseParser private + def listener + XMLParserListener + end + def _parse begin - parser = XMLParser.new + parser = REXMLLikeXMLParser.new parser.listener = @listener parser.parse(@rss) rescue XMLParserError => e @@ -54,7 +58,7 @@ module RSS end - class Listener < BaseListener + class XMLParserListener < BaseListener include ListenerMixin |