Sha256: d49950880c613b3d4d08e4ff3cebe9dfed505a67d395b49ecb8864a3cbe0966e

Contents?: true

Size: 452 Bytes

Versions: 3

Compression:

Stored size: 452 Bytes

Contents

require 'pathname'

require 'dry/core/inflector'
require 'rom/types'
require 'rom/setup/auto_registration_strategies/base'

module ROM
  module AutoRegistrationStrategies
    class CustomNamespace < Base
      option :namespace, type: Types::Strict::String

      def call
        "#{namespace}::#{Dry::Core::Inflector.camelize(filename)}"
      end

      private

      def filename
        Pathname(file).basename('.rb')
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rom-3.2.2 lib/rom/setup/auto_registration_strategies/custom_namespace.rb
rom-3.2.1 lib/rom/setup/auto_registration_strategies/custom_namespace.rb
rom-3.2.0 lib/rom/setup/auto_registration_strategies/custom_namespace.rb