Class: SwaggerYard::Directives::ParamClassDirective

Inherits:
YARD::Tags::Directive
  • Object
show all
Defined in:
lib/swagger_yard/directives.rb

Overview

A directive used to create a model tag with a dummy class. based on github.com/lsegal/yard/blob/master/lib/yard/tags/directives.rb#L361

Instance Method Summary collapse

Instance Method Details

#after_parseObject



9
10
11
12
13
# File 'lib/swagger_yard/directives.rb', line 9

def after_parse
  return unless handler

  create_object
end

#callObject



7
# File 'lib/swagger_yard/directives.rb', line 7

def call; end

#create_objectObject



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/swagger_yard/directives.rb', line 15

def create_object
  name = tag.name
  obj = YARD::CodeObjects::ClassObject.new(handler.namespace, tag.name)
  handler.register_file_info(obj)
  handler.register_source(obj)
  handler.register_group(obj)
  obj.docstring = YARD::Docstring.new!(parser.text,
                                       parser.tags,
                                       obj,
                                       nil,
                                       parser.reference)
  obj.add_tag(YARD::Tags::Tag.new(:model, name))
  parser.object = obj
  parser.post_process
  obj
end