Class: JsDuck::Exporter::Examples
- Inherits:
-
Object
- Object
- JsDuck::Exporter::Examples
- Defined in:
- lib/jsduck/exporter/examples.rb
Overview
Exporter for inline examples.
It produces the following structure:
:type => :class, # can also be :guide
:name => "Panel",
:examples => [
{:code => "bla bla", :options => {},
=> "bla bla", :options => {"raw" => true},
...
]
}
Instance Method Summary collapse
-
#export(cls) ⇒ Object
Returns hash of class name and inline examples.
-
#export_guide(guide) ⇒ Object
Returns hash of guide name and inline examples.
-
#initialize(relations, opts) ⇒ Examples
constructor
A new instance of Examples.
Constructor Details
#initialize(relations, opts) ⇒ Examples
Returns a new instance of Examples.
21 22 23 24 25 |
# File 'lib/jsduck/exporter/examples.rb', line 21 def initialize(relations, opts) # All params ignored, they're present to be compatible with # other exporters. @inline_examples = InlineExamples.new end |
Instance Method Details
#export(cls) ⇒ Object
Returns hash of class name and inline examples
28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/jsduck/exporter/examples.rb', line 28 def export(cls) examples = @inline_examples.extract(cls[:doc]) if examples.length > 0 { :type => :class, :name => cls[:name], :examples => examples, } else nil end end |
#export_guide(guide) ⇒ Object
Returns hash of guide name and inline examples
42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/jsduck/exporter/examples.rb', line 42 def export_guide(guide) examples = @inline_examples.extract(guide[:html] || "") if examples.length > 0 { :type => :guide, :name => guide["name"], :examples => examples, } else nil end end |