Sha256: eb11bfc72b474856310daa2eace2cc56b615c70038f6f6d5a37bfbfc0bfc9a74

Contents?: true

Size: 629 Bytes

Versions: 123

Compression:

Stored size: 629 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_utils/core_ext'

module EacRubyUtils
  module Templates
    module VariableProviders
      require_sub __FILE__

      PROVIDERS = %w[entries_reader hash generic].map do |name|
        "eac_ruby_utils/templates/variable_providers/#{name}".camelize.constantize
      end

      class << self
        def build(variables_source)
          PROVIDERS.each do |provider|
            return provider.new(variables_source) if provider.accept?(variables_source)
          end

          raise "Variables provider not found for #{variables_source}"
        end
      end
    end
  end
end

Version data entries

123 entries across 123 versions & 3 rubygems

Version Path
avm-tools-0.98.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.97.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.96.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
eac_ruby_utils-0.63.0 lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.95.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
eac_ruby_utils-0.62.1 lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.94.3 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
eac_ruby_utils-0.62.0 lib/eac_ruby_utils/templates/variable_providers.rb
eac_ruby_utils-0.61.0 lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.94.2 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
eac_ruby_utils-0.60.0 lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.94.1 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
eac_ruby_utils-0.59.0 lib/eac_ruby_utils/templates/variable_providers.rb
ehbrs-tools-0.20.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.94.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.93.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.92.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.91.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.90.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb
avm-tools-0.89.0 vendor/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb