class RubyTerraform::Options::Factory

Public Class Methods

new(definitions) click to toggle source
# File lib/ruby_terraform/options/factory.rb, line 8
def initialize(definitions)
  @definitions = definitions
end

Public Instance Methods

resolve(names, parameters) click to toggle source
# File lib/ruby_terraform/options/factory.rb, line 12
def resolve(names, parameters)
  names
    .map { |name| Name.new(name) }
    .inject([]) do |options, name|
      options + resolve_name(name, parameters)
    end
end

Private Instance Methods

resolve_name(name, parameters) click to toggle source
# File lib/ruby_terraform/options/factory.rb, line 22
def resolve_name(name, parameters)
  @definitions.find { |d| d.matches?(name) }.build(parameters)
end