123456789_123456789_123456789_123456789_123456789_

Class: Arel::Collectors::SubstituteBinds

Do not use. This class is for internal use only.
Relationships & Source Files
Inherits: Object
Defined in: activerecord/lib/arel/collectors/substitute_binds.rb

Class Method Summary

Instance Attribute Summary

Instance Method Summary

Constructor Details

.new(quoter, delegate_collector) ⇒ SubstituteBinds

[ GitHub ]

  
# File 'activerecord/lib/arel/collectors/substitute_binds.rb', line 8

def initialize(quoter, delegate_collector)
  @quoter = quoter
  @delegate = delegate_collector
end

Instance Attribute Details

#delegate (readonly, private)

[ GitHub ]

  
# File 'activerecord/lib/arel/collectors/substitute_binds.rb', line 32

attr_reader :quoter, :delegate

#preparable (rw)

[ GitHub ]

  
# File 'activerecord/lib/arel/collectors/substitute_binds.rb', line 6

attr_accessor :preparable

#quoter (readonly, private)

[ GitHub ]

  
# File 'activerecord/lib/arel/collectors/substitute_binds.rb', line 32

attr_reader :quoter, :delegate

Instance Method Details

#<<(str)

[ GitHub ]

  
# File 'activerecord/lib/arel/collectors/substitute_binds.rb', line 13

def <<(str)
  delegate << str
  self
end

#add_bind(bind)

[ GitHub ]

  
# File 'activerecord/lib/arel/collectors/substitute_binds.rb', line 18

def add_bind(bind)
  bind = bind.value_for_database if bind.respond_to?(:value_for_database)
  self << quoter.quote(bind)
end

#add_binds(binds, proc_for_binds = nil)

[ GitHub ]

  
# File 'activerecord/lib/arel/collectors/substitute_binds.rb', line 23

def add_binds(binds, proc_for_binds = nil)
  self << binds.map { |bind| quoter.quote(bind) }.join(", ")
end

#value

[ GitHub ]

  
# File 'activerecord/lib/arel/collectors/substitute_binds.rb', line 27

def value
  delegate.value
end