Class: RailsAutodoc::Registry

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_autodoc/registry.rb

Instance Method Summary collapse

Constructor Details

#initializeRegistry

Returns a new instance of Registry.



39
40
41
# File 'lib/rails_autodoc/registry.rb', line 39

def initialize
  @annotations = {}
end

Instance Method Details

#allObject



57
58
59
# File 'lib/rails_autodoc/registry.rb', line 57

def all
  @annotations.values
end

#clear!Object



61
62
63
# File 'lib/rails_autodoc/registry.rb', line 61

def clear!
  @annotations.clear
end

#find(controller, action) ⇒ Object



53
54
55
# File 'lib/rails_autodoc/registry.rb', line 53

def find(controller, action)
  @annotations[annotation_key(controller, action)]
end

#register(controller, action, &block) ⇒ Object



43
44
45
46
47
48
49
50
51
# File 'lib/rails_autodoc/registry.rb', line 43

def register(controller, action, &block)
  key = annotation_key(controller, action)
  annotation = (@annotations[key] ||= OperationAnnotation.new(
    controller: controller,
    action: action
  ))
  DSL::ControllerExtensions::AnnotationBuilder.new(annotation).instance_eval(&block)
  annotation
end