Module: Arel
- Defined in:
- lib/arel_extensions.rb
Defined Under Namespace
Classes: InsertManager, SelectManager, Table
Class Method Summary collapse
- .duration(s, expr) ⇒ Object
- .false ⇒ Object
- .json(*expr) ⇒ Object
- .rand ⇒ Object
- .shorten(s) ⇒ Object
- .true ⇒ Object
- .tuple(*v) ⇒ Object
- .when(condition) ⇒ Object
Class Method Details
.duration(s, expr) ⇒ Object
94 95 96 |
# File 'lib/arel_extensions.rb', line 94 def self.duration s, expr ArelExtensions::Nodes::Duration.new(s.to_s+'i',expr) end |
.false ⇒ Object
102 103 104 |
# File 'lib/arel_extensions.rb', line 102 def self.false Arel::Nodes::Equality.new(1,0) end |
.json(*expr) ⇒ Object
82 83 84 85 86 87 88 |
# File 'lib/arel_extensions.rb', line 82 def self.json *expr if expr.length == 1 ArelExtensions::Nodes::Json.new(expr.first) else ArelExtensions::Nodes::Json.new(expr) end end |
.rand ⇒ Object
74 75 76 |
# File 'lib/arel_extensions.rb', line 74 def self.rand ArelExtensions::Nodes::Rand.new end |
.shorten(s) ⇒ Object
78 79 80 |
# File 'lib/arel_extensions.rb', line 78 def self.shorten s Base64.urlsafe_encode64(Digest::MD5.new.digest(s)).tr('=', '').tr('-', '_') end |
.true ⇒ Object
98 99 100 |
# File 'lib/arel_extensions.rb', line 98 def self.true Arel::Nodes::Equality.new(1,1) end |
.tuple(*v) ⇒ Object
106 107 108 109 |
# File 'lib/arel_extensions.rb', line 106 def self.tuple *v tmp = Arel::Nodes::Grouping.new(nil) Arel::Nodes::Grouping.new(v.map{|e| tmp.convert_to_node(e)}) end |
.when(condition) ⇒ Object
90 91 92 |
# File 'lib/arel_extensions.rb', line 90 def self.when condition ArelExtensions::Nodes::Case.new.when(condition) end |