Class: IOSGen::Generator::BaseGenerator
- Inherits:
-
Object
- Object
- IOSGen::Generator::BaseGenerator
- Defined in:
- lib/ios_gen/generator/base_generator.rb
Overview
Base Generator
Constant Summary collapse
- VIEWCONTROLLER_KEY =
'view_controller'
- VIEWMODEL_KEY =
'view_model'
- INTERACTORS_KEY =
'interactors'
Instance Attribute Summary collapse
-
#destination ⇒ Object
readonly
Returns the value of attribute destination.
-
#factory ⇒ Object
readonly
Returns the value of attribute factory.
-
#file_spec ⇒ Object
readonly
Returns the value of attribute file_spec.
-
#formatter ⇒ Object
readonly
Returns the value of attribute formatter.
-
#test_formatter ⇒ Object
readonly
Returns the value of attribute test_formatter.
-
#type ⇒ Object
readonly
Returns the value of attribute type.
-
#view_controller ⇒ Object
readonly
Returns the value of attribute view_controller.
-
#view_model ⇒ Object
readonly
Returns the value of attribute view_model.
Instance Method Summary collapse
- #generate ⇒ Object
- #generate_test ⇒ Object
-
#initialize(hash = {}) ⇒ BaseGenerator
constructor
A new instance of BaseGenerator.
Constructor Details
#initialize(hash = {}) ⇒ BaseGenerator
Returns a new instance of BaseGenerator.
16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/ios_gen/generator/base_generator.rb', line 16 def initialize(hash = {}) @type = hash[:type] @file_spec = hash[:file_spec] @destination = hash[:destination] @factory = IOSGen::Base::BaseFactory.new interactor_formatter = Objc::InteractorFormatter.new view_model_formatter = Objc::ViewModelFormatter.new(interactor_formatter) view_controller_formatter = Objc::ViewControllerFormatter.new(view_model_formatter) @formatter = Objc::Formatter.new(view_controller_formatter, view_model_formatter, interactor_formatter) @test_formatter = Objc::XctestcaseFormatter.new parse end |
Instance Attribute Details
#destination ⇒ Object (readonly)
Returns the value of attribute destination.
12 13 14 |
# File 'lib/ios_gen/generator/base_generator.rb', line 12 def destination @destination end |
#factory ⇒ Object (readonly)
Returns the value of attribute factory.
14 15 16 |
# File 'lib/ios_gen/generator/base_generator.rb', line 14 def factory @factory end |
#file_spec ⇒ Object (readonly)
Returns the value of attribute file_spec.
12 13 14 |
# File 'lib/ios_gen/generator/base_generator.rb', line 12 def file_spec @file_spec end |
#formatter ⇒ Object (readonly)
Returns the value of attribute formatter.
14 15 16 |
# File 'lib/ios_gen/generator/base_generator.rb', line 14 def formatter @formatter end |
#test_formatter ⇒ Object (readonly)
Returns the value of attribute test_formatter.
14 15 16 |
# File 'lib/ios_gen/generator/base_generator.rb', line 14 def test_formatter @test_formatter end |
#type ⇒ Object (readonly)
Returns the value of attribute type.
12 13 14 |
# File 'lib/ios_gen/generator/base_generator.rb', line 12 def type @type end |
#view_controller ⇒ Object (readonly)
Returns the value of attribute view_controller.
13 14 15 |
# File 'lib/ios_gen/generator/base_generator.rb', line 13 def view_controller @view_controller end |
#view_model ⇒ Object (readonly)
Returns the value of attribute view_model.
13 14 15 |
# File 'lib/ios_gen/generator/base_generator.rb', line 13 def view_model @view_model end |
Instance Method Details
#generate ⇒ Object
29 30 31 32 33 34 |
# File 'lib/ios_gen/generator/base_generator.rb', line 29 def generate @formatter.generate do |file_name, template| generate_template(file_name, template, @destination) puts "[+] Created Source File: #{file_name}".green end end |
#generate_test ⇒ Object
36 37 38 39 40 41 |
# File 'lib/ios_gen/generator/base_generator.rb', line 36 def generate_test generate_test_object(@view_model) @view_model.interactors.each do |interactor| generate_test_object(interactor) end end |