Class: JsDuck::MetaTagRegistry
- Inherits:
-
Object
- Object
- JsDuck::MetaTagRegistry
- Includes:
- Singleton
- Defined in:
- lib/jsduck/meta_tag_registry.rb
Overview
Access to meta-tags
Instance Method Summary collapse
-
#[](name) ⇒ Object
Accesses tag by key or name.
-
#formatter ⇒ Object
Returns the formatter assigned to tags.
-
#formatter=(doc_formatter) ⇒ Object
Sets the doc-formatter for all tags.
-
#initialize ⇒ MetaTagRegistry
constructor
A new instance of MetaTagRegistry.
-
#load(paths) ⇒ Object
Loads meta-tags from the given paths.
-
#register(tags) ⇒ Object
Registers MetaTag instances.
-
#signatures ⇒ Object
Returns array of attributes to be shown in member signatures (and in order they should be shown in).
-
#tags ⇒ Object
Returns array of all available tag instances.
Constructor Details
#initialize ⇒ MetaTagRegistry
Returns a new instance of MetaTagRegistry.
10 11 12 13 |
# File 'lib/jsduck/meta_tag_registry.rb', line 10 def initialize = [] @map = {} end |
Instance Method Details
#[](name) ⇒ Object
Accesses tag by key or name
40 41 42 |
# File 'lib/jsduck/meta_tag_registry.rb', line 40 def [](name) @map[name] end |
#formatter ⇒ Object
Returns the formatter assigned to tags
45 46 47 |
# File 'lib/jsduck/meta_tag_registry.rb', line 45 def formatter @formatter end |
#formatter=(doc_formatter) ⇒ Object
Sets the doc-formatter for all tags
50 51 52 53 |
# File 'lib/jsduck/meta_tag_registry.rb', line 50 def formatter=(doc_formatter) @formatter = doc_formatter .each {|tag| tag.formatter = doc_formatter } end |
#load(paths) ⇒ Object
Loads meta-tags from the given paths. See MetaTagLoader#load for details.
This should only be called once. Calling it twice will override the previously loaded tags.
20 21 22 23 24 |
# File 'lib/jsduck/meta_tag_registry.rb', line 20 def load(paths) loader = MetaTagLoader.new paths.each {|p| loader.load(p) } register(loader.) end |
#register(tags) ⇒ Object
Registers MetaTag instances.
NB! This is for testing purposes only, elsewhere always use #load.
29 30 31 32 |
# File 'lib/jsduck/meta_tag_registry.rb', line 29 def register() = register_keys end |
#signatures ⇒ Object
Returns array of attributes to be shown in member signatures (and in order they should be shown in).
57 58 59 60 61 62 63 64 65 66 |
# File 'lib/jsduck/meta_tag_registry.rb', line 57 def signatures if !@signatures @signatures = .find_all(&:signature).map do |tag| s = tag.signature s[:key] = tag.key s end end @signatures end |
#tags ⇒ Object
Returns array of all available tag instances
35 36 37 |
# File 'lib/jsduck/meta_tag_registry.rb', line 35 def end |