Class: Generator::RBS::Entrypoint
- Inherits:
-
Object
- Object
- Generator::RBS::Entrypoint
show all
- Includes:
- FileWriter
- Defined in:
- lib/generator/rbs/entrypoint.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods included from FileWriter
#format_files, #write_file
Constructor Details
Returns a new instance of Entrypoint.
15
16
17
|
# File 'lib/generator/rbs/entrypoint.rb', line 15
def initialize(apis)
@apis = apis
end
|
Instance Attribute Details
#apis ⇒ Object
Returns the value of attribute apis.
13
14
15
|
# File 'lib/generator/rbs/entrypoint.rb', line 13
def apis
@apis
end
|
Instance Method Details
#api_methods ⇒ Object
23
24
25
26
27
28
29
30
|
# File 'lib/generator/rbs/entrypoint.rb', line 23
def api_methods
apis.map do |api|
{
name: api.name_with_version,
class_name: api.class_name,
}
end.sort_by { |api| api[:name] }
end
|
#apis_with_latest_version ⇒ Object
32
33
34
35
36
37
|
# File 'lib/generator/rbs/entrypoint.rb', line 32
def apis_with_latest_version
apis.group_by(&:name).transform_values do |api_list|
latest_version = VersionSelector.find_latest_version(api_list.map(&:version))
api_list.find { |api| api.version == latest_version }
end.sort.to_h
end
|
#generate ⇒ Object
19
20
21
|
# File 'lib/generator/rbs/entrypoint.rb', line 19
def generate
write_file(file_path, render_template)
end
|