Class: Docsmith::Diff::Renderers::Registry
- Inherits:
-
Object
- Object
- Docsmith::Diff::Renderers::Registry
- Defined in:
- lib/docsmith/diff/renderers/registry.rb
Overview
Registry for diff renderers keyed by content type string. Falls back to Base for unregistered types. Use Docsmith.configure { |c| c.register_diff_renderer(:html, MyRenderer) } to add custom renderers at runtime.
Class Method Summary collapse
-
.all ⇒ Hash
Copy of registered renderers.
-
.for(content_type) ⇒ Class
Renderer class; defaults to Base for unregistered types.
- .register(content_type, renderer_class) ⇒ void
-
.reset! ⇒ void
Resets registry to empty — for test isolation only.
Class Method Details
.all ⇒ Hash
Returns copy of registered renderers.
28 29 30 |
# File 'lib/docsmith/diff/renderers/registry.rb', line 28 def all @renderers.dup end |
.for(content_type) ⇒ Class
Returns renderer class; defaults to Base for unregistered types.
23 24 25 |
# File 'lib/docsmith/diff/renderers/registry.rb', line 23 def for(content_type) @renderers.fetch(content_type.to_s, Base) end |
.register(content_type, renderer_class) ⇒ void
This method returns an undefined value.
17 18 19 |
# File 'lib/docsmith/diff/renderers/registry.rb', line 17 def register(content_type, renderer_class) @renderers[content_type.to_s] = renderer_class end |
.reset! ⇒ void
This method returns an undefined value.
Resets registry to empty — for test isolation only.
34 35 36 |
# File 'lib/docsmith/diff/renderers/registry.rb', line 34 def reset! @renderers = {} end |