Class: Goldiloader::AssociationInfo

Inherits:
Object
  • Object
show all
Defined in:
lib/goldiloader/association_info.rb

Instance Method Summary collapse

Constructor Details

#initialize(association) ⇒ AssociationInfo



6
7
8
# File 'lib/goldiloader/association_info.rb', line 6

def initialize(association)
  @association = association
end

Instance Method Details

#auto_include?Boolean



20
21
22
# File 'lib/goldiloader/association_info.rb', line 20

def auto_include?
  association_scope.nil? || association_scope.auto_include_value
end

#from?Boolean



24
25
26
27
28
29
30
# File 'lib/goldiloader/association_info.rb', line 24

def from?
  if ActiveRecord::VERSION::MAJOR >= 5
    association_scope && association_scope.from_clause.present?
  else
    association_scope && association_scope.from_value.present?
  end
end

#group?Boolean



32
33
34
# File 'lib/goldiloader/association_info.rb', line 32

def group?
  association_scope && association_scope.group_values.present?
end

#instance_dependent?Boolean



36
37
38
# File 'lib/goldiloader/association_info.rb', line 36

def instance_dependent?
  reflection.scope.present? && reflection.scope.arity > 0
end

#limit?Boolean



16
17
18
# File 'lib/goldiloader/association_info.rb', line 16

def limit?
  association_scope && association_scope.limit_value.present?
end

#offset?Boolean



12
13
14
# File 'lib/goldiloader/association_info.rb', line 12

def offset?
  association_scope && association_scope.offset_value.present?
end