Represents a literal string with placeholders and arguments. This is necessary to ensure delayed literalization of the arguments required for the prepared statement support and for database-specific literalization.
Attributes
args | [R] |
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). |
parens | [R] |
Whether to surround the expression with parantheses |
str | [R] |
The literal string containing placeholders. This can also be an array of strings, where each arg in args goes between the string elements. |
Public Class methods
Create an object with the given string, placeholder arguments, and parens flag.
# File lib/sequel/sql.rb 1623 def initialize(str, args, parens=false) 1624 @str = str 1625 @args = args.is_a?(Array) && args.length == 1 && (v = args[0]).is_a?(Hash) ? v : args 1626 @parens = parens 1627 freeze 1628 end
Public Instance methods
Return a copy of the that will be surrounded by parantheses.
# File lib/sequel/sql.rb 1631 def with_parens 1632 @parens ? self : self.class.new(@str, @args, true) 1633 end