Module: Explicit::Documentation
- Extended by:
- Documentation
- Included in:
- Documentation
- Defined in:
- lib/explicit/documentation.rb,
lib/explicit/documentation/builder.rb,
lib/explicit/documentation/section.rb
Defined Under Namespace
Modules: Markdown, Output, Page Classes: Builder
Constant Summary collapse
- Section =
::Data.define(:name, :pages) do def contains_request? pages.any?(&:request?) end end
Instance Method Summary collapse
Instance Method Details
#new(&block) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/explicit/documentation.rb', line 8 def new(&block) engine = ::Class.new(::Rails::Engine) builder = Builder.new(engine).tap do |builder| builder.instance_eval &block builder.merge_request_examples_from_file! end engine.define_singleton_method(:documentation_builder) { builder } engine.routes.draw do get "/", to: builder.webpage, as: :explicit_documentation_webpage match "/swagger", to: builder.swagger, as: :explicit_documentation_swagger, via: [:get, :options] end engine end |