# REXML::Parsers::PullEvent (Class)

In: | rexml/parsers/pullparser.rb
Parent: | Object

A parsing event. The contents of the event are accessed as an +Array?, and the type is given either by the …? methods, or by accessing the `type` accessor. The contents of this object vary from event to event, but are identical to the arguments passed to +StreamListener+s for each event.

## Methods

[] attlistdecl? cdata? comment? doctype? elementdecl? end_element? entity? entitydecl? error? event_type inspect instruction? new notationdecl? start_element? text? xmldecl?

## Public Class methods

new(arg)

The type of this event. Will be one of :tag_start, :tag_end, :text, :processing_instruction, :comment, :doctype, :attlistdecl, :entitydecl, :notationdecl, :entity, :cdata, :xmldecl, or :error.

[Source]

    # File rexml/parsers/pullparser.rb, line 67
                            def initialize(arg)
                                    @contents = arg
                            end

## Public Instance methods

[]( index )

[Source]

    # File rexml/parsers/pullparser.rb, line 70
                            def []( index )
                                    @contents[index+1]
                            end

event_type()

[Source]

    # File rexml/parsers/pullparser.rb, line 73
                            def event_type
                                    @contents[0]
                            end

start_element?()

Content: [ String tag_name, Hash attributes ]

[Source]

    # File rexml/parsers/pullparser.rb, line 77
                            def start_element?
                                    @contents[0] == :start_element
                            end

end_element?()

Content: [ String tag_name ]

[Source]

    # File rexml/parsers/pullparser.rb, line 81
                            def end_element?
                                    @contents[0] == :end_element
                            end

text?()

Content: [ String raw_text, String unnormalized_text ]

[Source]

    # File rexml/parsers/pullparser.rb, line 85
                            def text?
                                    @contents[0] == :text
                            end

instruction?()

Content: [ String text ]

[Source]

    # File rexml/parsers/pullparser.rb, line 89
                            def instruction?
                                    @contents[0] == :processing_instruction
                            end

comment?()

Content: [ String text ]

[Source]

    # File rexml/parsers/pullparser.rb, line 93
                            def comment?
                                    @contents[0] == :comment
                            end

doctype?()

Content: [ String name, String pub_sys, String long_name, String uri ]

[Source]

    # File rexml/parsers/pullparser.rb, line 97
                            def doctype?
                                    @contents[0] == :start_doctype
                            end

attlistdecl?()

Content: [ String text ]

[Source]

    # File rexml/parsers/pullparser.rb, line 101
                            def attlistdecl?
                                    @contents[0] == :attlistdecl
                            end

elementdecl?()

Content: [ String text ]

[Source]

    # File rexml/parsers/pullparser.rb, line 105
                            def elementdecl?
                                    @contents[0] == :elementdecl
                            end

entitydecl?()

Due to the wonders of DTDs, an entity declaration can be just about anything. There’s no way to normalize it; you’ll have to interpret the content yourself. However, the following is true:

- If the entity declaration is an internal entity: [ String name, String value ]

Content: [ String text ]

[Source]

    # File rexml/parsers/pullparser.rb, line 115
                            def entitydecl?
                                    @contents[0] == :entitydecl
                            end

notationdecl?()

Content: [ String text ]

[Source]

    # File rexml/parsers/pullparser.rb, line 119
                            def notationdecl?
                                    @contents[0] == :notationdecl
                            end

entity?()

Content: [ String text ]

[Source]

    # File rexml/parsers/pullparser.rb, line 123
                            def entity?
                                    @contents[0] == :entity
                            end

cdata?()

Content: [ String text ]

[Source]

    # File rexml/parsers/pullparser.rb, line 127
                            def cdata?
                                    @contents[0] == :cdata
                            end

xmldecl?()

Content: [ String version, String encoding, String standalone ]

[Source]

    # File rexml/parsers/pullparser.rb, line 131
                            def xmldecl?
                                    @contents[0] == :xmldecl
                            end

error?()

[Source]

    # File rexml/parsers/pullparser.rb, line 134
                            def error?
                                    @contents[0] == :error
                            end

inspect()

[Source]

    # File rexml/parsers/pullparser.rb, line 138
                            def inspect
                                    @contents[0].to_s + ": " + @contents[1..-1].inspect
                            end

[Validate]