Class: Sequel::SQL::PlaceholderLiteralString
- Inherits:
-
Expression
- Object
- Expression
- Sequel::SQL::PlaceholderLiteralString
- Defined in:
- lib/sequel/sql.rb
Overview
Represents a literal string with placeholders and arguments. This is necessary to ensure delayed literalization of the arguments required for the prepared statement support
Instance Attribute Summary collapse
-
#args ⇒ Object
readonly
The arguments that will be subsituted into the placeholders.
-
#parens ⇒ Object
readonly
Whether to surround the expression with parantheses.
-
#str ⇒ Object
readonly
The literal string containing placeholders.
Instance Method Summary collapse
-
#initialize(str, args, parens = false) ⇒ PlaceholderLiteralString
constructor
Create an object with the given string, placeholder arguments, and parens flag.
Methods inherited from Expression
#==, attr_reader, comparison_attrs, #eql?, #hash, #lit, #sql_literal
Constructor Details
#initialize(str, args, parens = false) ⇒ PlaceholderLiteralString
Create an object with the given string, placeholder arguments, and parens flag.
731 732 733 734 735 |
# File 'lib/sequel/sql.rb', line 731 def initialize(str, args, parens=false) @str = str @args = args.is_a?(Array) && args.length == 1 && (v = args.at(0)).is_a?(Hash) ? v : args @parens = parens end |
Instance Attribute Details
#args ⇒ Object (readonly)
The arguments that will be subsituted into the placeholders. Either an array of unnamed placeholders (which will be substituted in order for ? characters), or a hash of named placeholders (which will be substituted for :key phrases).
722 723 724 |
# File 'lib/sequel/sql.rb', line 722 def args @args end |
#parens ⇒ Object (readonly)
Whether to surround the expression with parantheses
728 729 730 |
# File 'lib/sequel/sql.rb', line 728 def parens @parens end |
#str ⇒ Object (readonly)
The literal string containing placeholders
725 726 727 |
# File 'lib/sequel/sql.rb', line 725 def str @str end |