class CabbageDoc::Collection
Constants
- FILENAME
Public Class Methods
new()
click to toggle source
# File lib/cabbage_doc/collection.rb, line 10 def initialize @_controllers = [] end
Public Instance Methods
<<(controller)
click to toggle source
# File lib/cabbage_doc/collection.rb, line 14 def <<(controller) @_controllers << controller end
clear!(tag = nil)
click to toggle source
# File lib/cabbage_doc/collection.rb, line 49 def clear!(tag = nil) if tag && config.tags.size > 1 @_controllers.reject! { |controller| tag == controller.tag } else @_controllers = [] end end
each() { |controller| ... }
click to toggle source
# File lib/cabbage_doc/collection.rb, line 29 def each @_controllers.each do |controller| yield controller end end
find_action(method, path)
click to toggle source
# File lib/cabbage_doc/collection.rb, line 18 def find_action(method, path) action = nil @_controllers.each do |controller| action = controller.find_action(method, path) break if action end action end
load!()
click to toggle source
# File lib/cabbage_doc/collection.rb, line 57 def load! @_controllers = YAML.load(File.read(filename)) rescue [] unless @_controllers.any? end
parse!(filename, tag = TAG)
click to toggle source
# File lib/cabbage_doc/collection.rb, line 35 def parse!(filename, tag = TAG) text = File.read(filename) rescue nil return false unless text controller = Controller.parse(text, tag) return false unless controller controllers = controller.eval(text, tag) @_controllers.concat(controllers) controllers.any? end
save!()
click to toggle source
# File lib/cabbage_doc/collection.rb, line 61 def save! sort! open(filename, 'w') { |f| f.write(YAML.dump(@_controllers)) } rescue nil end
Private Instance Methods
config()
click to toggle source
# File lib/cabbage_doc/collection.rb, line 76 def config @_config ||= Configuration.instance end
filename()
click to toggle source
# File lib/cabbage_doc/collection.rb, line 80 def filename @_filename ||= Path.join(config.root, FILENAME) end
sort!()
click to toggle source
# File lib/cabbage_doc/collection.rb, line 68 def sort! return unless config.tags.size > 1 @_controllers.sort! do |controller| -config.tags.index(controller.tag).to_i end end