Sha256: 17c4fdc7ccf3f94c06d4b35c7373934f1899765d183cbd24ac294354255867be
Contents?: true
Size: 650 Bytes
Versions: 3
Compression:
Stored size: 650 Bytes
Contents
module DataMapper module Ambition module Query @@sexps = {} # TODO: spec and document this # @api semipublic def filter(&block) # TODO: benchmark Marshal versus just building the sexp on demand # deep clone the sexp for multiple re-use sexp = Marshal.load(@@sexps[block.to_s] ||= Marshal.dump(block.to_sexp)) processor = FilterProcessor.new(block.binding, model) processor.process(sexp) self.class.new(repository, model, options.merge(:conditions => conditions & processor.conditions)) end end # module Query end # module Ambition end # module DataMapper
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
dm-ambition-1.1.0 | lib/dm-ambition/query.rb |
dm-ambition-1.1.0.rc3 | lib/dm-ambition/query.rb |
dm-ambition-1.1.0.rc1 | lib/dm-ambition/query.rb |