class Fear::PartialFunction::Combined
Composite function produced by +PartialFunction#and_then+ method @api private
Attributes
f1[R]
@!attribute f1
@return [Fear::PartialFunction]
@!attribute f2
@return [Fear::PartialFunction]
f2[R]
@!attribute f1
@return [Fear::PartialFunction]
@!attribute f2
@return [Fear::PartialFunction]
Public Class Methods
new(f1, f2)
click to toggle source
@param f1 [Fear::PartialFunction] @param f2 [Fear::PartialFunction]
# File lib/fear/partial_function/combined.rb, line 12 def initialize(f1, f2) @f1 = f1 @f2 = f2 end
Public Instance Methods
call(arg)
click to toggle source
@param arg [any] @return [any ]
# File lib/fear/partial_function/combined.rb, line 26 def call(arg) f2.(f1.(arg)) end
call_or_else(arg) { |arg| ... }
click to toggle source
@param arg [any] @yieldparam arg [any] @return [any]
# File lib/fear/partial_function/combined.rb, line 36 def call_or_else(arg) result = f1.call_or_else(arg) { return yield(arg) } f2.call_or_else(result) { |_| return yield(arg) } end
defined_at?(arg)
click to toggle source
@param arg [any] @return [Boolean]
# File lib/fear/partial_function/combined.rb, line 43 def defined_at?(arg) result = f1.call_or_else(arg) do return false end f2.defined_at?(result) end