Sha256: ffeb11ecbb52282bbeded91ebe44ca6c2443fcdf624d6a53b995b79fb4204912

Contents?: true

Size: 529 Bytes

Versions: 1

Compression:

Stored size: 529 Bytes

Contents

# frozen_string_literal: true

require_relative "core"

module ROM
  module Components
    # @api public
    class Association < Core
      # @!attribute [r] definition
      #   @return [Association::Definition]
      option :definition

      # @api public
      def build
        association_class.new(definition, registry.relations)
      end

      private

      # @api private
      def association_class
        ROM.adapters[config.adapter].const_get(:Associations).const_get(definition.type)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rom-6.0.0.alpha1 lib/rom/components/association.rb