Class: DynarexRecordset
- Inherits:
-
Array
- Object
- Array
- DynarexRecordset
- Defined in:
- lib/dynarex.rb
Instance Method Summary collapse
- #index(val) ⇒ Object
- #index_by_id(id) ⇒ Object
-
#initialize(a, caller = nil) ⇒ DynarexRecordset
constructor
A new instance of DynarexRecordset.
- #reject! ⇒ Object
- #sum(field) ⇒ Object
Constructor Details
#initialize(a, caller = nil) ⇒ DynarexRecordset
Returns a new instance of DynarexRecordset.
43 44 45 46 |
# File 'lib/dynarex.rb', line 43 def initialize(a, caller=nil) super(a) @caller = caller end |
Instance Method Details
#index(val) ⇒ Object
63 64 65 |
# File 'lib/dynarex.rb', line 63 def index(val) self.map(&:to_h).index val.to_h end |
#index_by_id(id) ⇒ Object
67 68 69 |
# File 'lib/dynarex.rb', line 67 def index_by_id(id) self.map(&:id).index id end |
#reject! ⇒ Object
48 49 50 51 52 53 54 55 56 57 |
# File 'lib/dynarex.rb', line 48 def reject!() a = self.to_a.clone a2 = super return nil unless a2 a3 = a - a2 @caller.delete a3.map(&:id) self end |
#sum(field) ⇒ Object
59 60 61 |
# File 'lib/dynarex.rb', line 59 def sum(field) self.inject(0) {|r, x| r + x[field.to_sym][/\d+(\.\d+)?$/].to_f } end |