Class: JsDuck::Render::Tags
- Inherits:
-
Object
- Object
- JsDuck::Render::Tags
- Defined in:
- lib/jsduck/render/tags.rb
Overview
Performs the rendering of tags.
Class Method Summary collapse
-
.render(member) ⇒ Object
Renders tags of a particular section.
-
.render_signature(member) ⇒ Object
Renders the signatures for a class member.
-
.renderers ⇒ Object
Returns tags for rendering HTML, sorted in the order they should appear in final output.
Class Method Details
.render(member) ⇒ Object
Renders tags of a particular section.
Takes member or class hash. Returns array of rendered HTML.
12 13 14 15 16 17 18 19 20 |
# File 'lib/jsduck/render/tags.rb', line 12 def self.render(member) renderers.map do |tag| if member[tag.tagname] tag.to_html(member) else nil end end end |
.render_signature(member) ⇒ Object
Renders the signatures for a class member. Returns a string.
36 37 38 39 40 41 42 43 44 45 |
# File 'lib/jsduck/render/tags.rb', line 36 def self.render_signature(member) html = [] TagRegistry.signatures.each do |s| if member[s[:tagname]] title = s[:tooltip] ? "title='#{s[:tooltip]}'" : "" html << "<span class='#{s[:tagname]}' #{title}>#{s[:long]}</span>" end end '<span class="signature">' + html.join + "</span>" end |
.renderers ⇒ Object
Returns tags for rendering HTML, sorted in the order they should appear in final output. Sorting order is determined by the numeric :html_position field.
25 26 27 28 29 30 31 32 |
# File 'lib/jsduck/render/tags.rb', line 25 def self.renderers if !@renderers @renderers = TagRegistry..find_all(&:html_position) @renderers.sort! {|a, b| a.html_position <=> b.html_position } end @renderers end |