Sha256: 82906e192cb313e3bc5583aac6fc16a556b844766f22995c742888e9a9928495

Contents?: true

Size: 579 Bytes

Versions: 68

Compression:

Stored size: 579 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_utils/core_ext'

module EacTemplates
  module VariableProviders
    require_sub __FILE__

    PROVIDERS = %w[config_reader entries_reader hash generic].map do |name|
      "eac_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

Version data entries

68 entries across 68 versions & 4 rubygems

Version Path
eac_templates-0.3.2 lib/eac_templates/variable_providers.rb
avm-tools-0.129.0 sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.16.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
avm-tools-0.128.0 sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.15.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.14.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.13.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
avm-tools-0.127.0 sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.12.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
avm-tools-0.126.0 sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.11.1 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
avm-tools-0.125.0 sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.11.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
avm-tools-0.124.0 sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.10.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
avm-tools-0.123.0 sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.9.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
avm-tools-0.122.0 sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.8.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb
eac_tools-0.7.0 sub/avm-tools/sub/eac_templates/lib/eac_templates/variable_providers.rb