Class: Yoda::Model::FunctionSignatures::Constructor
- Defined in:
- lib/yoda/model/function_signatures/constructor.rb
Overview
Constructor provides a signature of ‘YourClass.new` from `initialize` method of the class.
Instance Attribute Summary collapse
-
#initialize_method ⇒ Object
readonly
Returns the value of attribute initialize_method.
Instance Method Summary collapse
- #document ⇒ String
-
#initialize(namespace, initialize_method) ⇒ Constructor
constructor
A new instance of Constructor.
- #name ⇒ Object
- #namespace_path ⇒ Object
- #parameter_type_of(param) ⇒ TypeExpressions::Base?
- #parameters ⇒ ParameterList
- #primary_source ⇒ (String, Integer, Integer)?
- #rbs_type(env) ⇒ RBS::MethodType
- #sep ⇒ Object
- #sources ⇒ Array<(String, Integer, Integer)>
- #tags ⇒ Array<Store::Objects::Tag>
- #type ⇒ Object
- #visibility ⇒ Object
Methods inherited from Base
Constructor Details
#initialize(namespace, initialize_method) ⇒ Constructor
11 12 13 14 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 11 def initialize(namespace, initialize_method) @namespace = namespace @initialize_method = initialize_method end |
Instance Attribute Details
#initialize_method ⇒ Object (readonly)
Returns the value of attribute initialize_method.
7 8 9 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 7 def initialize_method @initialize_method end |
Instance Method Details
#document ⇒ String
48 49 50 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 48 def document initialize_method.document end |
#name ⇒ Object
31 32 33 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 31 def name 'new' end |
#namespace_path ⇒ Object
43 44 45 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 43 def namespace_path initialize_method.namespace_path end |
#parameter_type_of(param) ⇒ TypeExpressions::Base?
73 74 75 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 73 def parameter_type_of(param) type_builder.type_of(param) end |
#parameters ⇒ ParameterList
63 64 65 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 63 def parameters @parameters ||= ParameterList.new(initialize_method.parameters) end |
#primary_source ⇒ (String, Integer, Integer)?
68 69 70 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 68 def primary_source initialize_method.primary_source end |
#rbs_type(env) ⇒ RBS::MethodType
22 23 24 25 26 27 28 29 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 22 def rbs_type(env) RBS::MethodType.new( type_params: [], type: type.to_rbs_type(env), block: nil, location: nil, ) end |
#sep ⇒ Object
39 40 41 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 39 def sep '.' end |
#sources ⇒ Array<(String, Integer, Integer)>
58 59 60 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 58 def sources initialize_method.sources end |
#tags ⇒ Array<Store::Objects::Tag>
53 54 55 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 53 def initialize_method.tag_list end |
#type ⇒ Object
16 17 18 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 16 def type type_builder.type end |
#visibility ⇒ Object
35 36 37 |
# File 'lib/yoda/model/function_signatures/constructor.rb', line 35 def visibility :public end |