Class: Ariadne::Yard::DryInitializer::OptionHandler
- Inherits:
-
YARD::Handlers::Ruby::Base
- Object
- YARD::Handlers::Ruby::Base
- Ariadne::Yard::DryInitializer::OptionHandler
- Includes:
- CommonHandler
- Defined in:
- lib/ariadne/yard/dry_initializer/option_handler.rb
Overview
:nodoc:
Instance Method Summary collapse
Instance Method Details
#process ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/ariadne/yard/dry_initializer/option_handler.rb', line 13 def process super parsed_docstring = YARD::DocstringParser.new.parse(statement.docstring) existing_tag = parsed_docstring..find { |t| t.name == definition_name } # missing documentation if existing_tag.nil? else defaults = existing_tag.defaults defaults = defaults.join if defaults # only docstring has complete description past newlines docstring = statement.docstring.tr("\n", " ") # strip out everything except description docstring = docstring[docstring.index(existing_tag.text)..] constructor.add_tag(YARD::Tags::DefaultTag.new(:param, docstring, existing_tag.types, existing_tag.name, defaults)) end end |