Class: Yoda::YARDExtensions::SigDirective
- Inherits:
-
YARD::Tags::Directive
- Object
- YARD::Tags::Directive
- Yoda::YARDExtensions::SigDirective
- Defined in:
- lib/yoda/yard_extensions/sig_directive.rb
Instance Method Summary collapse
Instance Method Details
#after_parse ⇒ Object
6 7 8 9 |
# File 'lib/yoda/yard_extensions/sig_directive.rb', line 6 def after_parse return unless handler && handler.namespace create_object end |
#call ⇒ Object
4 |
# File 'lib/yoda/yard_extensions/sig_directive.rb', line 4 def call; end |
#create_object ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/yoda/yard_extensions/sig_directive.rb', line 11 def create_object method_name = name scope = parser.state.scope || handler.scope visibility = parser.state.visibility || handler.visibility method_object = YARD::CodeObjects::MethodObject.new(handler.namespace, method_name, scope) method_object.add_tag(TypeTag.new(:type, type_text)) unless method_object.files # Already registered object method_object.signature = "def #{method_name}" method_object.dynamic = true handler.register_file_info(method_object) handler.register_source(method_object) handler.register_visibility(method_object, visibility) handler.register_group(method_object) handler.register_module_function(method_object) end end |
#name ⇒ Object
31 32 33 |
# File 'lib/yoda/yard_extensions/sig_directive.rb', line 31 def name tag.text.split(' ').first end |
#type_text ⇒ Object
35 36 37 |
# File 'lib/yoda/yard_extensions/sig_directive.rb', line 35 def type_text tag.text.gsub(/\A\w+\s+/, '') end |