class UseCaseFlow::Result
Attributes
name[R]
Public Class Methods
new(name, *args)
click to toggle source
# File lib/use_case_flow/result.rb, line 7 def initialize(name, *args) @name = name @args = args @was_called = false define_singleton_method(name) do |&block| block.call(*@args) @was_called = true end define_singleton_method("#{name}?") do true end end
Public Instance Methods
else() { || ... }
click to toggle source
# File lib/use_case_flow/result.rb, line 22 def else yield unless @was_called end
else_fail!()
click to toggle source
# File lib/use_case_flow/result.rb, line 26 def else_fail! self.else { raise "unhandled Result '#{@name}' with args: #{@args.inspect}" } end
method_missing(_method_name, *_args, &_block)
click to toggle source
rubocop:disable Style/MethodMissing
# File lib/use_case_flow/result.rb, line 31 def method_missing(_method_name, *_args, &_block) false end
value()
click to toggle source
# File lib/use_case_flow/result.rb, line 39 def value @args.first end
values()
click to toggle source
# File lib/use_case_flow/result.rb, line 35 def values @args end