| Class | RSS::BaseListener |
| In: |
lib/rss/parser.rb
|
| Parent: | Object |
return the tag_names for setters associated with uri
# 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
# 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
# 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
# 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
register uri against this name.
# 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
test if this uri is registered against this name
# File lib/rss/parser.rb, line 206
206: def uri_registered?(uri, name)
207: @@registered_uris[name].has_key?(uri)
208: end
# 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