Class: Arel::Session
- Inherits:
-
Object
- Object
- Arel::Session
- Defined in:
- lib/arel/session.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.instance ⇒ Object
5 6 7 |
# File 'lib/arel/session.rb', line 5 def self.instance @instance || new end |
.start ⇒ Object
9 10 11 12 13 14 |
# File 'lib/arel/session.rb', line 9 def self.start @instance ||= new yield @instance ensure @instance = nil end |
Instance Method Details
#create(insert) ⇒ Object
16 17 18 |
# File 'lib/arel/session.rb', line 16 def create(insert) insert.call end |
#delete(delete) ⇒ Object
31 32 33 |
# File 'lib/arel/session.rb', line 31 def delete(delete) delete.call end |
#read(select) ⇒ Object
20 21 22 23 24 25 |
# File 'lib/arel/session.rb', line 20 def read(select) @read ||= {} key = select.object_id return @read[key] if @read.key? key @read[key] = select.call end |
#update(update) ⇒ Object
27 28 29 |
# File 'lib/arel/session.rb', line 27 def update(update) update.call end |