Sha256: 35ddffdcabe1b4b98224acf69e8ebc368084a1d2fcfec074e312014f2a7a82ac
Contents?: true
Size: 783 Bytes
Versions: 5
Compression:
Stored size: 783 Bytes
Contents
require 'rom/support/inflector' module ROM module Associations # @api private class ThroughIdentifier # @api private attr_reader :source # @api private attr_reader :target # @api private attr_reader :assoc_name # @api private def self.[](source, target, assoc_name = nil) new(source, target, assoc_name || default_assoc_name(target)) end # @api private def self.default_assoc_name(relation) Inflector.singularize(relation).to_sym end # @api private def initialize(source, target, assoc_name) @source = source @target = target @assoc_name = assoc_name end # @api private def to_sym source end end end end
Version data entries
5 entries across 5 versions & 1 rubygems