Class: REXML::Validation::Event

Inherits:
Object
  • Object
show all
Defined in:
lib/rexml/validation/validation.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(event_type, event_arg = nil) ⇒ Event

Returns a new instance of Event.



70
71
72
73
# File 'lib/rexml/validation/validation.rb', line 70

def initialize(event_type, event_arg=nil )
  @event_type = event_type
  @event_arg = event_arg
end

Instance Attribute Details

#event_argObject

Returns the value of attribute event_arg.



76
77
78
# File 'lib/rexml/validation/validation.rb', line 76

def event_arg
  @event_arg
end

#event_typeObject (readonly)

Returns the value of attribute event_type.



75
76
77
# File 'lib/rexml/validation/validation.rb', line 75

def event_type
  @event_type
end

Instance Method Details

#==(other) ⇒ Object



130
131
132
133
# File 'lib/rexml/validation/validation.rb', line 130

def ==( other )
  return false unless other.kind_of? Event
  @event_type == other.event_type and @event_arg == other.event_arg
end

#done?Boolean

Returns:

  • (Boolean)


78
79
80
# File 'lib/rexml/validation/validation.rb', line 78

def done?
  @done
end

#inspectObject



139
140
141
# File 'lib/rexml/validation/validation.rb', line 139

def inspect
  "#{@event_type.inspect}( #@event_arg )"
end

#matches?(event) ⇒ Boolean

Returns:

  • (Boolean)


86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# File 'lib/rexml/validation/validation.rb', line 86

def matches?( event )
  return false unless event[0] == @event_type
  case event[0]
  when nil
    return true
  when :start_element
    return true if event[1] == @event_arg
  when :end_element
    return true
  when :start_attribute
    return true if event[1] == @event_arg
  when :end_attribute
    return true
  when :end_document
    return true
  when :text
    return (@event_arg.nil? or @event_arg == event[1])
=begin
  when :processing_instruction
    false
  when :xmldecl
    false
  when :start_doctype
    false
  when :end_doctype
    false
  when :externalentity
    false
  when :elementdecl
    false
  when :entity
    false
  when :attlistdecl
    false
  when :notationdecl
    false
  when :end_doctype
    false
=end
  else
    false
  end
end

#single?Boolean

Returns:

  • (Boolean)


82
83
84
# File 'lib/rexml/validation/validation.rb', line 82

def single?
  return (@event_type != :start_element and @event_type != :start_attribute)
end

#to_sObject



135
136
137
# File 'lib/rexml/validation/validation.rb', line 135

def to_s
  inspect
end