Class: Yoda::Model::FunctionSignatures::Method

Inherits:
Base
  • Object
show all
Defined in:
lib/yoda/model/function_signatures/method.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#to_s, #visibility, #wrap

Constructor Details

#initialize(method_object) ⇒ Method

Returns a new instance of Method.

Parameters:



9
10
11
12
# File 'lib/yoda/model/function_signatures/method.rb', line 9

def initialize(method_object)
  fail ArgumentError, method_object unless method_object.is_a?(Store::Objects::MethodObject)
  @method_object = method_object
end

Instance Attribute Details

#method_objectStore::Objects::MethodObject (readonly)



6
7
8
# File 'lib/yoda/model/function_signatures/method.rb', line 6

def method_object
  @method_object
end

Instance Method Details

#documentString

Returns:

  • (String)


30
31
32
# File 'lib/yoda/model/function_signatures/method.rb', line 30

def document
  @method_object.document
end

#nameString

Returns:

  • (String)


15
16
17
# File 'lib/yoda/model/function_signatures/method.rb', line 15

def name
  method_object.name.to_s
end

#namespace_pathString

Returns:

  • (String)


25
26
27
# File 'lib/yoda/model/function_signatures/method.rb', line 25

def namespace_path
  method_object.namespace_path
end

#parameter_type_of(param) ⇒ Object



70
71
72
# File 'lib/yoda/model/function_signatures/method.rb', line 70

def parameter_type_of(param)
  type_builder.type_of(param)
end

#parametersParameterList

Returns:



66
67
68
# File 'lib/yoda/model/function_signatures/method.rb', line 66

def parameters
  @parameters ||= ParameterList.new(method_object.parameters)
end

#primary_source(String, Integer, Integer)?

Returns:

  • ((String, Integer, Integer), nil)


61
62
63
# File 'lib/yoda/model/function_signatures/method.rb', line 61

def primary_source
  method_object.primary_source
end

#rbs_type(env) ⇒ RBS::MethodType

Parameters:

Returns:

  • (RBS::MethodType)


46
47
48
49
50
51
52
53
# File 'lib/yoda/model/function_signatures/method.rb', line 46

def rbs_type(env)
  RBS::MethodType.new(
    type_params: [],
    type: type.to_rbs_type(env),
    block: nil,
    location: nil,
  )
end

#sepString

Returns:

  • (String)


20
21
22
# File 'lib/yoda/model/function_signatures/method.rb', line 20

def sep
  method_object.sep
end

#sourcesArray<(String, Integer, Integer)>

Returns:

  • (Array<(String, Integer, Integer)>)


56
57
58
# File 'lib/yoda/model/function_signatures/method.rb', line 56

def sources
  method_object.source
end

#tagsArray<Store::Objects::Tag>

Returns:



35
36
37
# File 'lib/yoda/model/function_signatures/method.rb', line 35

def tags
  method_object.tag_list
end

#typeTypeExpressions::FunctionType



40
41
42
# File 'lib/yoda/model/function_signatures/method.rb', line 40

def type
  type_builder.type
end