all()
click to toggle source
def all
@columns.keys
end
column(col_name)
click to toggle source
def column(col_name)
@columns[col_name.to_s]
end
default(col_name)
click to toggle source
def default(col_name)
return nil unless include?(col_name)
default = column(col_name)[:default]
default.respond_to?(:call) ? default.call : default
end
include?(col_name)
click to toggle source
method_missing(method_sym, *args)
click to toggle source
def method_missing(method_sym, *args)
data_type = args.shift || :String
options = args.shift || {}
@columns[method_sym.to_s] = options.merge( :type => data_type )
end
type_of(col_name)
click to toggle source
def type_of(col_name)
column(col_name) && column(col_name)[:type]
end