class Bmg::Sql::Processor::Rename

Public Class Methods

new(renaming, builder) click to toggle source
Calls superclass method Bmg::Sql::Processor::new
# File lib/bmg/sql/processor/rename.rb, line 6
def initialize(renaming, builder)
  super(builder)
  @renaming = renaming
end

Public Instance Methods

on_select_item(sexpr) click to toggle source
# File lib/bmg/sql/processor/rename.rb, line 17
def on_select_item(sexpr)
  return sexpr unless newname = @renaming[sexpr.as_name.to_sym]
  builder.select_item(sexpr.qualifier, sexpr.would_be_name, newname.to_s)
end
on_select_list(sexpr) click to toggle source
# File lib/bmg/sql/processor/rename.rb, line 11
def on_select_list(sexpr)
  sexpr.each_with_index.map{|child,index|
    index == 0 ? child : apply(child)
  }
end