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::BlankLineo; ;[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[i0o;;[;0;0[@-I"REXML::Parsers;TcRDoc::NormalModule