class Yoda::Model::FunctionSignatures::Constructor

Constructor provides a signature of `YourClass.new` from `initialize` method of the class.

Attributes

initialize_method[R]

Public Class Methods

new(namespace, initialize_method) click to toggle source

@param namespace [Store::Objects::NamespaceObject] @param initialize_method [Store::Objects::MethodObject]

# File lib/yoda/model/function_signatures/constructor.rb, line 11
def initialize(namespace, initialize_method)
  @namespace = namespace
  @initialize_method = initialize_method
end

Public Instance Methods

document() click to toggle source

@return [String]

# File lib/yoda/model/function_signatures/constructor.rb, line 37
def document
  initialize_method.document
end
name() click to toggle source
# File lib/yoda/model/function_signatures/constructor.rb, line 20
def name
  'new'
end
namespace_path() click to toggle source
# File lib/yoda/model/function_signatures/constructor.rb, line 32
def namespace_path
  initialize_method.namespace_path
end
parameter_type_of(param) click to toggle source

@return [Types::Base, nil]

# File lib/yoda/model/function_signatures/constructor.rb, line 57
def parameter_type_of(param)
  type_builder.type_of(param)
end
parameters() click to toggle source

@return [ParameterList]

# File lib/yoda/model/function_signatures/constructor.rb, line 47
def parameters
  @parameters ||= ParameterList.new(initialize_method.parameters)
end
primary_source() click to toggle source

@return [(String, Integer, Integer), nil]

# File lib/yoda/model/function_signatures/constructor.rb, line 52
def primary_source
  initialize_method.primary_source
end
sep() click to toggle source
# File lib/yoda/model/function_signatures/constructor.rb, line 28
def sep
  '.'
end
sources() click to toggle source

@return [Array<(String, Integer, Integer)>]

# File lib/yoda/model/function_signatures/constructor.rb, line 42
def sources
  initialize_method.sources
end
type() click to toggle source
# File lib/yoda/model/function_signatures/constructor.rb, line 16
def type
  type_builder.type
end
visibility() click to toggle source
# File lib/yoda/model/function_signatures/constructor.rb, line 24
def visibility
  :public
end

Private Instance Methods

type_builder() click to toggle source

@return [TypeBuilder]

# File lib/yoda/model/function_signatures/constructor.rb, line 64
def type_builder
  @type_builder ||= TypeBuilder.new(parameters, initialize_method.tag_list)
end