class Sequel::SQL::DelayedEvaluation
Represents a delayed evaluation, encapsulating a callable object which returns the value to use when called.
Attributes
callable[R]
A callable object that returns the value of the evaluation when called.
Public Class Methods
new(callable)
click to toggle source
Set the callable object
# File lib/sequel/sql.rb, line 1332 def initialize(callable) @callable = callable freeze end
Public Instance Methods
call(ds)
click to toggle source
Call the underlying callable and return the result. If the underlying callable only accepts a single argument, call it with the given dataset.
# File lib/sequel/sql.rb, line 1340 def call(ds) if @callable.respond_to?(:arity) && @callable.arity == 1 @callable.call(ds) else @callable.call end end