Module: Gen
- Defined in:
- lib/openapi/sourcetools/gen.rb
Overview
The generation module that contains things visible to tasks.
Class Method Summary collapse
- .add(source:, template: nil, template_name: nil, name: nil, executable: false, x: nil) ⇒ Object
- .add_task(task:, name: nil, executable: false, x: nil) ⇒ Object
- .add_write_content(name:, content:, executable: false) ⇒ Object
- .document ⇒ Object
- .setup(document_content, input_name, output_directory, config_prefix) ⇒ Object
Class Method Details
.add(source:, template: nil, template_name: nil, name: nil, executable: false, x: nil) ⇒ Object
115 116 117 118 |
# File 'lib/openapi/sourcetools/gen.rb', line 115 def self.add(source:, template: nil, template_name: nil, name: nil, executable: false, x: nil) add_task(task: OpenAPISourceTools::Task.new(source, template, template_name), name:, executable:, x:) end |
.add_task(task:, name: nil, executable: false, x: nil) ⇒ Object
102 103 104 105 106 107 108 109 |
# File 'lib/openapi/sourcetools/gen.rb', line 102 def self.add_task(task:, name: nil, executable: false, x: nil) @tasks.push(task) # Since this method allows the user to pass their own task type instance, # assign optional values with defaults only when clearly given. @tasks.last.name = name unless name.nil? @tasks.last.executable = executable unless executable == false @tasks.last.x = x unless x.nil? end |
.add_write_content(name:, content:, executable: false) ⇒ Object
111 112 113 |
# File 'lib/openapi/sourcetools/gen.rb', line 111 def self.add_write_content(name:, content:, executable: false) add_task(task: OpenAPISourceTools::WriteTask.new(name, content, executable)) end |
.document ⇒ Object
120 121 122 123 124 125 126 127 128 |
# File 'lib/openapi/sourcetools/gen.rb', line 120 def self.document @docsrc.join("\n") + %( - add_task(task:, name: nil, executable: false, x: nil) : Adds task object. - add_write_content(name:, content:, executable: false) : Add file write task. - add(source:, template: nil, template_name: nil, name: nil, executable: false, x: nil) : Adds template task with source as object to process. ) end |
.setup(document_content, input_name, output_directory, config_prefix) ⇒ Object
91 92 93 94 95 96 97 98 99 100 |
# File 'lib/openapi/sourcetools/gen.rb', line 91 def self.setup(document_content, input_name, output_directory, config_prefix) @doc = document_content @outdir = output_directory unless input_name.nil? @in_name = File.basename(input_name) @in_basename = File.basename(input_name, '.*') end @configuration = load_config(config_prefix) add_task(task: OpenAPISourceTools::HelperTask.new) end |