module Sequel::Dataset::ArgumentMapper

  1. lib/sequel/dataset/prepared_statements.rb

Default implementation of the argument mapper to allow native database support for bind variables and prepared statements (as opposed to the emulated ones used by default).

Public Instance methods

bind_arguments ()

The bind arguments to use for running this prepared statement

[show source]
   # File lib/sequel/dataset/prepared_statements.rb
50 def bind_arguments
51   @opts[:bind_arguments]
52 end
call (bind_vars=OPTS, &block)

Set the bind arguments based on the hash and call super.

[show source]
   # File lib/sequel/dataset/prepared_statements.rb
55 def call(bind_vars=OPTS, &block)
56   sql = prepared_sql
57   prepared_args.freeze
58   ps = bind(bind_vars)
59   ps.clone(:bind_arguments=>ps.map_to_prepared_args(ps.opts[:bind_vars]), :sql=>sql, :prepared_sql=>sql).run(&block)
60 end
prepared_sql ()

Override the given *_sql method based on the type, and cache the result of the sql.

[show source]
   # File lib/sequel/dataset/prepared_statements.rb
64 def prepared_sql
65   if sql = @opts[:prepared_sql] || cache_get(:_prepared_sql)
66     return sql
67   end
68   cache_set(:_prepared_sql, super)
69 end
prepared_statement_name ()

The name of the prepared statement, if any.

[show source]
   # File lib/sequel/dataset/prepared_statements.rb
45 def prepared_statement_name
46   @opts[:prepared_statement_name]
47 end