Class: Slidict::PresentationMethodRegistry
- Inherits:
-
Object
- Object
- Slidict::PresentationMethodRegistry
- Defined in:
- lib/slidict/presentation_method.rb
Constant Summary collapse
- BUILTIN_GLOB =
File.("../../data/slidict/methods/*.yml", __dir__)
- PLUGIN_GLOB =
"slidict/methods/*.yml"
Instance Method Summary collapse
- #all ⇒ Object
- #fetch(id) ⇒ Object
- #find(id) ⇒ Object
-
#initialize(paths: nil, include_plugins: true) ⇒ PresentationMethodRegistry
constructor
A new instance of PresentationMethodRegistry.
Constructor Details
#initialize(paths: nil, include_plugins: true) ⇒ PresentationMethodRegistry
Returns a new instance of PresentationMethodRegistry.
79 80 81 |
# File 'lib/slidict/presentation_method.rb', line 79 def initialize(paths: nil, include_plugins: true) @paths = paths || default_paths(include_plugins: include_plugins) end |
Instance Method Details
#all ⇒ Object
83 84 85 |
# File 'lib/slidict/presentation_method.rb', line 83 def all @all ||= @paths.sort.map { |path| PresentationMethod.load_file(path) }.sort_by(&:id) end |
#fetch(id) ⇒ Object
91 92 93 |
# File 'lib/slidict/presentation_method.rb', line 91 def fetch(id) find(id) || raise(ArgumentError, "unknown presentation method #{id}") end |
#find(id) ⇒ Object
87 88 89 |
# File 'lib/slidict/presentation_method.rb', line 87 def find(id) all.find { |method| method.id == id.to_s } end |