Class: REXML::Parsers::PullEvent (Ruby 2.2.4)
Description: Class : REXML::Parsers::PullEvent - Ruby 2.2.4

- Home
- Core 2.2.4
- Std-lib 2.2.4
- Downloads

Support for the Ruby 2.2 series has ended. See here for reference.

### Home Classes Methods

### In Files

- rexml/parsers/pullparser.rb

### Parent

Object

### Methods

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

### Class/Module Index

Quicksearch

- Array
- Fixnum
- Float
- Object
- REXML
- REXML::AttlistDecl
- REXML::Attribute
- REXML::Attributes
- REXML::CData
- REXML::Child
- REXML::Comment
- REXML::DTD
- REXML::DTD::AttlistDecl
- REXML::DTD::ElementDecl
- REXML::DTD::EntityDecl
- REXML::DTD::NotationDecl
- REXML::DTD::Parser
- REXML::Declaration
- REXML::DocType
- REXML::Document
- REXML::Element
- REXML::ElementDecl
- REXML::Elements
- REXML::Encoding
- REXML::Entity
- REXML::EntityConst
- REXML::ExternalEntity
- REXML::Formatters
- REXML::Formatters::Default
- REXML::Formatters::Pretty
- REXML::Formatters::Transitive
- REXML::Functions
- REXML::IOSource
- REXML::Instruction
- REXML::Light
- REXML::Light::Node
- REXML::Namespace
- REXML::Node
- REXML::NotationDecl
- REXML::Output
- REXML::Parent
- REXML::ParseException
- REXML::Parsers
- REXML::Parsers::BaseParser
- REXML::Parsers::LightParser
- REXML::Parsers::PullEvent
- REXML::Parsers::PullParser
- REXML::Parsers::SAX2Parser
- REXML::Parsers::StreamParser
- REXML::Parsers::TreeParser
- REXML::Parsers::UltraLightParser
- REXML::Parsers::XPathParser
- REXML::QuickPath
- REXML::SAX2Listener
- REXML::Security
- REXML::Source
- REXML::SourceFactory
- REXML::StreamListener
- REXML::SyncEnumerator
- REXML::Text
- REXML::UndefinedNamespaceException
- REXML::Validation
- REXML::Validation::Choice
- REXML::Validation::Event
- REXML::Validation::Interleave
- REXML::Validation::OneOrMore
- REXML::Validation::Optional
- REXML::Validation::Ref
- REXML::Validation::RelaxNG
- REXML::Validation::Sequence
- REXML::Validation::State
- REXML::Validation::ValidationException
- REXML::Validation::Validator
- REXML::Validation::ZeroOrMore
- REXML::XMLDecl
- REXML::XMLTokens
- REXML::XPath
- REXML::XPathParser
- Symbol

No matching classes.

# REXML::Parsers::PullEvent

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

new(arg) click to toggle source

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.

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

### Public Instance Methods

[]( start, endd=nil) click to toggle source

                   # File rexml/parsers/pullparser.rb, line 98
    def []( start, endd=nil)
      if start.kind_of? Range
        @contents.slice( start.begin+1 .. start.end )
      elsif start.kind_of? Numeric
        if endd.nil?
          @contents.slice( start+1 )
        else
          @contents.slice( start+1, endd )
        end
      else
        raise "Illegal argument #{start.inspect} (#{start.class})"
      end
    end

attlistdecl?() click to toggle source

Content: [ String text ]

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

cdata?() click to toggle source

Content: [ String text ]

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

comment?() click to toggle source

Content: [ String text ]

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

doctype?() click to toggle source

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

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

elementdecl?() click to toggle source

Content: [ String text ]

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

end_element?() click to toggle source

Content: [ String tag_name ]

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

entity?() click to toggle source

Content: [ String text ]

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

entitydecl?() click to toggle source

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 ]

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

error?() click to toggle source

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

event_type() click to toggle source

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

inspect() click to toggle source

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

instruction?() click to toggle source

Content: [ String text ]

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

notationdecl?() click to toggle source

Content: [ String text ]

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

start_element?() click to toggle source

Content: [ String tag_name, Hash attributes ]

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

text?() click to toggle source

Content: [ String raw_text, String unnormalized_text ]

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

xmldecl?() click to toggle source

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

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