Class: Sequel::Dataset

Inherits:
Object
  • Object
show all
Includes:
Ripar
Defined in:
lib/philtre/sequel_extensions.rb,
lib/philtre/sequel_extensions.rb

Overview

TODO docs for this

Instance Method Summary collapse

Instance Method Details

#grind(filter = Philtre::Filter.new, apply_unknown: true) {|grinder| ... } ⇒ Object

filter must respond_to expr_hash and order_hash will optionally yield a Grinder instance to the block

Yields:

  • (grinder)


23
24
25
26
27
28
29
# File 'lib/philtre/sequel_extensions.rb', line 23

def grind( filter = Philtre::Filter.new, apply_unknown: true )
  grinder = Philtre::Grinder.new filter
  t_dataset = grinder.transform self, apply_unknown: apply_unknown
  # only yield after the transform, so the grinder has the place holders
  yield grinder if block_given?
  t_dataset
end

#rolled(&blk) ⇒ Object

roll the block and return the resulting dataset immediately



15
16
17
# File 'lib/philtre/sequel_extensions.rb', line 15

def rolled( &blk )
  roller.rive &blk
end

#rollerObject

make the roller understand dataset method



6
7
8
9
10
11
12
# File 'lib/philtre/sequel_extensions.rb', line 6

def roller
  rv = super
  class << rv
    def to_dataset; riven end
  end
  rv
end