Class RSS::BaseListener
In: lib/rss/parser.rb
Parent: Object

Methods

Public Class methods

return the tag_names for setters associated with uri

[Source]

     # File lib/rss/parser.rb, line 191
191:       def available_tags(uri)
192:         begin
193:           @@setters[uri].keys
194:         rescue NameError
195:           []
196:         end
197:       end

retrieve class_name for the supplied uri and tag_name If it doesn‘t exist, capitalize the tag_name

[Source]

     # File lib/rss/parser.rb, line 218
218:       def class_name(uri, tag_name)
219:         begin
220:           @@class_names[uri][tag_name]
221:         rescue NameError
222:           tag_name[0,1].upcase + tag_name[1..-1]
223:         end
224:       end

record class_name for the supplied uri and tag_name

[Source]

     # File lib/rss/parser.rb, line 211
211:       def install_class_name(uri, tag_name, class_name)
212:         @@class_names[uri] ||= {}
213:         @@class_names[uri][tag_name] = class_name
214:       end

[Source]

     # File lib/rss/parser.rb, line 226
226:       def install_get_text_element(uri, name, setter)
227:         install_setter(uri, name, setter)
228:         def_get_text_element(uri, name, *get_file_and_line_from_caller(1))
229:       end

[Source]

     # File lib/rss/parser.rb, line 231
231:       def raise_for_undefined_entity?
232:         true
233:       end

register uri against this name.

[Source]

     # File lib/rss/parser.rb, line 200
200:       def register_uri(uri, name)
201:         @@registered_uris[name] ||= {}
202:         @@registered_uris[name][uri] = nil
203:       end

return the setter for the uri, tag_name pair, or nil.

[Source]

     # File lib/rss/parser.rb, line 181
181:       def setter(uri, tag_name)
182:         begin
183:           @@setters[uri][tag_name]
184:         rescue NameError
185:           nil
186:         end
187:       end

test if this uri is registered against this name

[Source]

     # File lib/rss/parser.rb, line 206
206:       def uri_registered?(uri, name)
207:         @@registered_uris[name].has_key?(uri)
208:       end

Private Class methods

[Source]

     # File lib/rss/parser.rb, line 242
242:       def def_get_text_element(uri, name, file, line)
243:         register_uri(uri, name)
244:         unless private_instance_methods(false).include?("start_#{name}")
245:           module_eval("def start_\#{name}(name, prefix, attrs, ns)\nuri = _ns(ns, prefix)\nif self.class.uri_registered?(uri, \#{name.inspect})\nstart_get_text_element(name, prefix, ns, uri)\nelse\nstart_else_element(name, prefix, attrs, ns)\nend\nend\n", file, line)
246:           __send__("private", "start_#{name}")
247:         end
248:       end

set the setter for the uri, tag_name pair

[Source]

     # File lib/rss/parser.rb, line 237
237:       def install_setter(uri, tag_name, setter)
238:         @@setters[uri] ||= {}
239:         @@setters[uri][tag_name] = setter
240:       end

[Validate]