class SQLKnit::SQL::Select
Attributes
statement_chains[R]
Public Class Methods
new()
click to toggle source
# File lib/sql/select.rb, line 7 def initialize @statement_chains = [] end
Public Instance Methods
text(str)
click to toggle source
# File lib/sql/select.rb, line 11 def text str statement_chains << str if not statement_chains.include? str end
to_statement()
click to toggle source
# File lib/sql/select.rb, line 15 def to_statement "select #{statement_chains.join(",\n")}" end
Private Instance Methods
create_method(name, &block)
click to toggle source
# File lib/sql/select.rb, line 30 def create_method name, &block self.class.send :define_method, name, &block end
method_missing(table_name, as_mapper)
click to toggle source
# File lib/sql/select.rb, line 21 def method_missing table_name, as_mapper create_method table_name do |as_mapper| as_mapper.each {|col, as_col| text "#{table_name}.#{col} as #{as_col}"} end send table_name, as_mapper end