Class: NewBridge::EvalResult

Inherits:
Object
  • Object
show all
Defined in:
lib/new_bridge/eval_result.rb

Overview

Success/failure wrapper for asynchronous bridge completions (+eval_r_async+).

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(state, value, error) ⇒ EvalResult

Returns a new instance of EvalResult.



16
17
18
19
20
# File 'lib/new_bridge/eval_result.rb', line 16

def initialize(state, value, error)
  @state = state
  @value = value
  @error = error
end

Instance Attribute Details

#errorObject (readonly)

Returns the value of attribute error.



6
7
8
# File 'lib/new_bridge/eval_result.rb', line 6

def error
  @error
end

#valueObject (readonly)

Returns the value of attribute value.



6
7
8
# File 'lib/new_bridge/eval_result.rb', line 6

def value
  @value
end

Class Method Details

.failure(error) ⇒ Object



12
13
14
# File 'lib/new_bridge/eval_result.rb', line 12

def self.failure(error)
  new(:fail, nil, error)
end

.success(value) ⇒ Object



8
9
10
# File 'lib/new_bridge/eval_result.rb', line 8

def self.success(value)
  new(:ok, value, nil)
end

Instance Method Details

#ok?Boolean

Returns:

  • (Boolean)


22
23
24
# File 'lib/new_bridge/eval_result.rb', line 22

def ok?
  @state == :ok
end