module Cassie::Statements::Statement::Inserting

Public Class Methods

included(base) click to toggle source

@!visibility private @!parse include Assignments @!parse extend Assignments::ClassMethods @!parse include Conditions @!parse extend Conditions::ClassMethods

# File lib/cassie/statements/statement/inserting.rb, line 12
def self.included(base)
  base.instance_eval do
    include Assignments
    include Conditions

    @result_class = Cassie::Statements::Results::ModificationResult
  end
  base.extend ClassMethods
end

Protected Instance Methods

build_insert_cql_and_params() click to toggle source
# File lib/cassie/statements/statement/inserting.rb, line 37
def build_insert_cql_and_params
  identifiers_str, terms_str, value_params = build_insert_and_params
  condition_str, condition_params = build_condition_and_params

  @cql = %(
    INSERT INTO #{table}
    (#{identifiers_str})
    VALUES (#{terms_str})
    #{condition_str}
  ).squish + ";"

  @params = value_params + condition_params
end