Class: Apiculture::MethodDocumentation
- Inherits:
-
Object
- Object
- Apiculture::MethodDocumentation
- Defined in:
- lib/apiculture/method_documentation.rb
Overview
Generates Markdown/HTML documentation about a single API action.
Formats route parameters and request/QS parameters as a neat HTML table, listing types, requirements and descriptions.
Is used by AppDocumentation to compile a document on the entire app’s API structure in one go.
Defined Under Namespace
Instance Method Summary collapse
-
#initialize(action_definition, mountpoint = '') ⇒ MethodDocumentation
constructor
A new instance of MethodDocumentation.
-
#to_html_fragment ⇒ Object
Compose an HTML string by converting the result of
to_markdown
. -
#to_markdown ⇒ Object
Compose a Markdown definition of the action.
Constructor Details
#initialize(action_definition, mountpoint = '') ⇒ MethodDocumentation
Returns a new instance of MethodDocumentation.
12 13 14 15 |
# File 'lib/apiculture/method_documentation.rb', line 12 def initialize(action_definition, mountpoint = '') @definition = action_definition @mountpoint = mountpoint end |
Instance Method Details
#to_html_fragment ⇒ Object
Compose an HTML string by converting the result of to_markdown
30 31 32 |
# File 'lib/apiculture/method_documentation.rb', line 30 def to_html_fragment markdown_string_to_html(to_markdown) end |
#to_markdown ⇒ Object
Compose a Markdown definition of the action
18 19 20 21 22 23 24 25 26 27 |
# File 'lib/apiculture/method_documentation.rb', line 18 def to_markdown m = MDBuf.new m << "## #{@definition.http_verb.upcase} #{@mountpoint}#{@definition.path}" m << @definition.description m << route_parameters_table m << request_parameters_table m << possible_responses_table m.to_s end |