Class: ClickHouse::Definition::ColumnSet
- Inherits:
-
Object
- Object
- ClickHouse::Definition::ColumnSet
- Defined in:
- lib/click_house/definition/column_set.rb
Constant Summary collapse
- TYPES =
ClickHouse.types.each_with_object([]) do |(name, type), object| object << name.sub('%s', "'%s'") if type.ddl? end
Class Method Summary collapse
Instance Method Summary collapse
- #columns ⇒ Object
-
#initialize {|_self| ... } ⇒ ColumnSet
constructor
A new instance of ColumnSet.
- #nested(name, &block) ⇒ Object (also: #Nested)
- #push(sql) ⇒ Object (also: #<<)
- #to_s ⇒ Object
Constructor Details
#initialize {|_self| ... } ⇒ ColumnSet
Returns a new instance of ColumnSet.
36 37 38 |
# File 'lib/click_house/definition/column_set.rb', line 36 def initialize yield(self) if block_given? end |
Class Method Details
.method_name_for_type(type) ⇒ Object
13 14 15 |
# File 'lib/click_house/definition/column_set.rb', line 13 def method_name_for_type(type) type.sub(/\(.+/, '') end |
Instance Method Details
#columns ⇒ Object
40 41 42 |
# File 'lib/click_house/definition/column_set.rb', line 40 def columns @columns ||= [] end |
#nested(name, &block) ⇒ Object Also known as: Nested
54 55 56 |
# File 'lib/click_house/definition/column_set.rb', line 54 def nested(name, &block) columns << "#{name} Nested #{ColumnSet.new(&block)}" end |
#push(sql) ⇒ Object Also known as: <<
60 61 62 |
# File 'lib/click_house/definition/column_set.rb', line 60 def push(sql) columns << sql end |
#to_s ⇒ Object
44 45 46 47 48 |
# File 'lib/click_house/definition/column_set.rb', line 44 def to_s <<~SQL ( #{columns.map(&:to_s).join(', ')} ) SQL end |