Class: Cequel::Schema::UpdateTableDSL
- Inherits:
- BasicObject
- Extended by:
- Util::Forwardable
- Defined in:
- lib/cequel/schema/update_table_dsl.rb
Overview
DSL for describing a series of schema modification statements
Class Method Summary collapse
-
.apply(updater) { ... } ⇒ void
private
Describe a series of schema modifications and build a TableUpdater to encapsulate them.
Instance Method Summary collapse
-
#add_column(name, type) ⇒ void
Add a column to the table.
-
#add_list(name, type) ⇒ void
Add a list to the table.
-
#add_map(name, key_type, value_type) ⇒ void
Add a map to the table.
-
#add_set(name, type) ⇒ void
Add a set to the table.
- #change_column(name, type) ⇒ Object
-
#change_properties(options) ⇒ void
(also: #change_options)
Change one or more table storage properties.
-
#create_index(column_name, index_name = nil) ⇒ Object
(also: #add_index)
(see Cequel::Schema::TableUpdater#create_index.
-
#drop_index(index_name) ⇒ void
(also: #remove_index)
Remove a secondary index.
-
#initialize(updater) ⇒ UpdateTableDSL
constructor
private
A new instance of UpdateTableDSL.
-
#rename_column(old_name, new_name) ⇒ void
Rename a column.
Methods included from Util::Forwardable
Constructor Details
#initialize(updater) ⇒ UpdateTableDSL
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of UpdateTableDSL.
30 31 32 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 30 def initialize(updater) @updater = updater end |
Class Method Details
.apply(updater) { ... } ⇒ void
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
This method returns an undefined value.
Describe a series of schema modifications and build a TableUpdater to encapsulate them
20 21 22 23 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 20 def self.apply(updater, &block) dsl = new(updater) dsl.instance_eval(&block) end |
Instance Method Details
#add_column(name, type) ⇒ void
This method returns an undefined value.
Add a column to the table
38 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 38 def_delegator :@updater, :add_column |
#add_list(name, type) ⇒ void
This method returns an undefined value.
Add a list to the table
44 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 44 def_delegator :@updater, :add_list |
#add_map(name, key_type, value_type) ⇒ void
This method returns an undefined value.
Add a map to the table
56 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 56 def_delegator :@updater, :add_map |
#add_set(name, type) ⇒ void
This method returns an undefined value.
Add a set to the table
50 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 50 def_delegator :@updater, :add_set |
#change_column(name, type) ⇒ Object
62 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 62 def_delegator :@updater, :change_column |
#change_properties(options) ⇒ void Also known as: change_options
This method returns an undefined value.
Change one or more table storage properties
74 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 74 def_delegator :@updater, :change_properties |
#create_index(column_name, index_name = nil) ⇒ Object Also known as: add_index
(see Cequel::Schema::TableUpdater#create_index
81 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 81 def_delegator :@updater, :create_index |
#drop_index(index_name) ⇒ void Also known as: remove_index
This method returns an undefined value.
Remove a secondary index
88 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 88 def_delegator :@updater, :drop_index |
#rename_column(old_name, new_name) ⇒ void
This method returns an undefined value.
Rename a column
68 |
# File 'lib/cequel/schema/update_table_dsl.rb', line 68 def_delegator :@updater, :rename_column |