Sequel extends Symbol
to add methods
to implement the SQL DSL.
Included modules
- Sequel::SQL::AliasMethods
- Sequel::SQL::CastMethods
- Sequel::SQL::OrderMethods
- Sequel::SQL::BooleanMethods
- Sequel::SQL::NumericMethods
- Sequel::SQL::QualifyingMethods
- Sequel::SQL::StringMethods
- Sequel::SQL::SubscriptMethods
- Sequel::SQL::ComplexExpressionMethods
- Sequel::Postgres::ArrayOpMethods
- Sequel::Postgres::HStoreOpMethods
- Sequel::Postgres::JSONOpMethods
- Sequel::Postgres::RangeOpMethods
- Sequel::Postgres::PGRowOp::ExpressionMethods
- Sequel::SQL::InequalityMethods
Public Instance methods
[]
(*args)
Create an SQL Function with the receiver as the function name and the given arguments.
[show source]
# File lib/sequel/extensions/ruby18_symbol_extensions.rb, line 19 def [](*args) Sequel::SQL::Function.new(self, *args) end
identifier
()
Returns receiver wrapped in an Sequel::SQL::Identifier
.
Usually used to prevent splitting the symbol.
:a__b # SQL: "a"."b" :a__b.identifier # SQL: "a__b"
[show source]
# File lib/sequel/extensions/core_extensions.rb, line 215 def identifier Sequel::SQL::Identifier.new(self) end
sql_function
(*args)
Returns a Sequel::SQL::Function
with this as the function
name, and the given arguments. This is aliased as Symbol#[]
if
the RUBY_VERSION is less than 1.9.0. Ruby 1.9 defines
Symbol#[]
, and Sequel doesn’t
override methods defined by ruby itself.
:now.sql_function # SQL: now() :sum.sql_function(:a) # SQL: sum(a) :concat.sql_function(:a, :b) # SQL: concat(a, b)
[show source]
# File lib/sequel/extensions/core_extensions.rb, line 227 def sql_function(*args) Sequel::SQL::Function.new(self, *args) end