Class: Yoda::Model::FunctionSignatures::Overload
- Defined in:
- lib/yoda/model/function_signatures/overload.rb
Instance Attribute Summary collapse
- #method_object ⇒ Store::Objects::MethodObject readonly
- #overload ⇒ Store::Objects::Overload readonly
Instance Method Summary collapse
- #document ⇒ String
-
#initialize(method_object, overload) ⇒ Overload
constructor
A new instance of Overload.
- #name ⇒ String
- #namespace_path ⇒ String abstract
- #parameter_type_of(param) ⇒ Object
- #parameters ⇒ ParameterList
- #primary_source ⇒ (String, Integer, Integer)?
- #sep ⇒ String
- #sources ⇒ Array<(String, Integer, Integer)>
- #type ⇒ Types::FunctionType
- #visibility ⇒ Symbol
Methods inherited from Base
Constructor Details
#initialize(method_object, overload) ⇒ Overload
Returns a new instance of Overload.
13 14 15 16 17 18 |
# 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 |
Instance Attribute Details
#method_object ⇒ Store::Objects::MethodObject (readonly)
6 7 8 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 6 def method_object @method_object end |
#overload ⇒ Store::Objects::Overload (readonly)
9 10 11 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 9 def overload @overload end |
Instance Method Details
#document ⇒ String
36 37 38 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 36 def document overload.document || method_object.document end |
#name ⇒ String
26 27 28 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 26 def name method_object.name end |
#namespace_path ⇒ String
This method is abstract.
52 53 54 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 52 def namespace_path method_object.namespace_path end |
#parameter_type_of(param) ⇒ Object
66 67 68 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 66 def parameter_type_of(param) type_builder.type_of(param) end |
#parameters ⇒ ParameterList
62 63 64 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 62 def parameters @parameters ||= ParameterList.new(overload.parameters) end |
#primary_source ⇒ (String, Integer, Integer)?
57 58 59 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 57 def primary_source overload.primary_source || method_object.primary_source end |
#sep ⇒ String
31 32 33 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 31 def sep method_object.sep end |
#sources ⇒ Array<(String, Integer, Integer)>
46 47 48 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 46 def sources method_object.sources end |
#type ⇒ Types::FunctionType
41 42 43 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 41 def type @type = type_builder.type end |
#visibility ⇒ Symbol
21 22 23 |
# File 'lib/yoda/model/function_signatures/overload.rb', line 21 def visibility method_object.visibility end |