Module: RSMP::Result

Defined in:
lib/rsmp/result.rb

Overview

Result values represent the expected outcome of finite operations.

Defined Under Namespace

Classes: Failure, Success

Class Method Summary collapse

Class Method Details

.failure(code = nil, failure: nil, **details) ⇒ Object



73
74
75
76
77
78
79
80
81
82
83
# File 'lib/rsmp/result.rb', line 73

def failure(code = nil, failure: nil, **details)
  Failure.new(
    failure: failure || RSMP::Failure.new(
      code: code,
      message: details.fetch(:message, code),
      source: details.fetch(:source, :operation),
      context: details.fetch(:context, {}),
      cause: details[:cause]
    )
  )
end

.success(value = nil) ⇒ Object



69
70
71
# File 'lib/rsmp/result.rb', line 69

def success(value = nil)
  Success.new(value)
end