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


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

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.


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

def event_arg
  @event_arg
end

#event_typeObject (readonly)

Returns the value of attribute event_type.


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

def event_type
  @event_type
end

Instance Method Details

#==(other) ⇒ Object


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

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

#done?Boolean


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

def done?
  @done
end

#inspectObject


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

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

#matches?(event) ⇒ Boolean


85
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
# File 'lib/rexml/validation/validation.rb', line 85

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


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

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

#to_sObject


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

def to_s
  inspect
end