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.

Public Class methods

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

[Source]

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

Content: [ String text ]

[Source]

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

Content: [ String text ]

[Source]

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

Content: [ String text ]

[Source]

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

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

Content: [ String text ]

[Source]

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

Content: [ String tag_name ]

[Source]

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

Content: [ String text ]

[Source]

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

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

[Source]

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

[Source]

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

[Source]

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

Content: [ String text ]

[Source]

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

Content: [ String text ]

[Source]

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

Content: [ String tag_name, Hash attributes ]

[Source]

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

Content: [ String raw_text, String unnormalized_text ]

[Source]

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

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

[Source]

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

[Validate]