module Dry::Logic::Builder

Constants

IGNORED_OPERATIONS
IGNORED_PREDICATES

Public Class Methods

call(&context) click to toggle source

Predicate and operation builder

@block [Proc] @return [Builder::Result] @example Check if input is zero

is_zero = Dry::Logic::Builder.call do
  negation { lt?(0) ^ gt?(0) }
end

p is_zero.call(1) # => false
p is_zero.call(0) # => true
p is_zero.call(-1) # => false
# File lib/dry/logic/builder.rb, line 34
def call(&context)
  Context.instance.call(&context)
end
Also aliased as: build

Public Instance Methods

build(&context)
Alias for: call
call(&context) click to toggle source

Predicate and operation builder

@block [Proc] @return [Builder::Result] @example Check if input is zero

is_zero = Dry::Logic::Builder.call do
  negation { lt?(0) ^ gt?(0) }
end

p is_zero.call(1) # => false
p is_zero.call(0) # => true
p is_zero.call(-1) # => false
# File lib/dry/logic/builder.rb, line 34
def call(&context)
  Context.instance.call(&context)
end
Also aliased as: build