class Yoda::Model::FunctionSignatures::Overload

Attributes

method_object[R]

@return [Store::Objects::MethodObject]

overload[R]

@return [Store::Objects::Overload]

Public Class Methods

new(method_object, overload) click to toggle source

@param method_object [Store::Objects::MethodObject] @param overload [Store::Objects::Overload]

# File lib/yoda/model/function_signatures/overload.rb, line 13
def initialize(method_object, overload)
  fail ArgumentError, method_object unless method_object.is_a?(Store::Objects::MethodObject)
  fail ArgumentError, overload unless overload.is_a?(Store::Objects::Overload)
  @method_object = method_object
  @overload = overload
end

Public Instance Methods

document() click to toggle source

@return [String]

# File lib/yoda/model/function_signatures/overload.rb, line 36
def document
  overload.document || method_object.document
end
name() click to toggle source

@return [String]

# File lib/yoda/model/function_signatures/overload.rb, line 26
def name
  method_object.name
end
namespace_path() click to toggle source

@abstract @return [String]

# File lib/yoda/model/function_signatures/overload.rb, line 52
def namespace_path
  method_object.namespace_path
end
parameter_type_of(param) click to toggle source
# File lib/yoda/model/function_signatures/overload.rb, line 66
def parameter_type_of(param)
  type_builder.type_of(param)
end
parameters() click to toggle source

@return [ParameterList]

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

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

# File lib/yoda/model/function_signatures/overload.rb, line 57
def primary_source
  overload.primary_source || method_object.primary_source
end
sep() click to toggle source

@return [String]

# File lib/yoda/model/function_signatures/overload.rb, line 31
def sep
  method_object.sep
end
sources() click to toggle source

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

# File lib/yoda/model/function_signatures/overload.rb, line 46
def sources
  method_object.sources
end
type() click to toggle source

@return [Types::FunctionType]

# File lib/yoda/model/function_signatures/overload.rb, line 41
def type
  @type = type_builder.type
end
visibility() click to toggle source

@return [Symbol]

# File lib/yoda/model/function_signatures/overload.rb, line 21
def visibility
  method_object.visibility
end

Private Instance Methods

type_builder() click to toggle source

@return [TypeBuilder]

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