class Arel::Collectors::Bind

Public Class Methods

new() click to toggle source
# File lib/arel/collectors/bind.rb, line 4
def initialize
  @parts = []
end

Public Instance Methods

<<(str) click to toggle source
# File lib/arel/collectors/bind.rb, line 8
def << str
  @parts << str
  self
end
add_bind(bind) click to toggle source
# File lib/arel/collectors/bind.rb, line 13
def add_bind bind
  @parts << bind
  self
end
compile(bvs) click to toggle source
# File lib/arel/collectors/bind.rb, line 31
def compile bvs
  substitute_binds(bvs).join
end
substitute_binds(bvs) click to toggle source
# File lib/arel/collectors/bind.rb, line 20
def substitute_binds bvs
  bvs = bvs.dup
  @parts.map do |val|
    if Arel::Nodes::BindParam === val
      bvs.shift
    else
      val
    end
  end
end
value() click to toggle source
# File lib/arel/collectors/bind.rb, line 18
def value; @parts; end