U:RDoc::NormalClass[iI"PullParser:ETI"REXML::Parsers::PullParser;TI"Object;To:RDoc::Markup::Document:@parts[o;;[
S:RDoc::Markup::Heading:
leveli: textI"Using the Pull Parser;To:RDoc::Markup::Paragraph;[I">This API is experimental, and subject to change.;To:RDoc::Markup::Verbatim;[
I"@parser = PullParser.new( "texttxet" )
;TI"while parser.has_next?
;TI" res = parser.next
;TI"> puts res[1]['att'] if res.start_tag? and res[0] == 'b'
;TI" end
;T:@format0o;;[I"LSee the PullEvent class for information on the content of the results. ;TI"MThe data is identical to the arguments passed for the various events to ;TI"the StreamListener API.;To:RDoc::Markup::BlankLine o;;[I"Notice that:;To;
;[
I"2parser = PullParser.new( "BAD DOCUMENT" )
;TI"while parser.has_next?
;TI" res = parser.next
;TI"" raise res[1] if res.error?
;TI" end
;T;0o;;[I"3Nat Price gave me some good ideas for the API.;T:
@fileI"$lib/rexml/parsers/pullparser.rb;T:0@omit_headings_from_table_of_contents_below0;0;0[ [ [[I"XMLTokens;To;;[ ;@-;0I"$lib/rexml/parsers/pullparser.rb;T[[I"
class;T[[:public[[I"new;T@5[:protected[ [:private[ [I"
instance;T[[;[
[I"add_listener;F@5[I" each;F@5[I" peek;F@5[I" pull;F@5[I"unshift;F@5[;[ [;[ [[I"Forwardable;To;;[ ;@-;0@5[U:RDoc::Context::Section[i 0o;;[ ;0;0[@-I"REXML::Parsers;TcRDoc::NormalModule