Class: RSchema::Result
- Inherits:
-
Object
- Object
- RSchema::Result
- Defined in:
- lib/rschema/result.rb
Defined Under Namespace
Classes: InvalidError
Class Method Summary collapse
Instance Method Summary collapse
- #error ⇒ Object
-
#initialize(valid, value, error) ⇒ Result
constructor
A new instance of Result.
- #invalid? ⇒ Boolean
- #valid? ⇒ Boolean
- #value ⇒ Object
Constructor Details
#initialize(valid, value, error) ⇒ Result
Returns a new instance of Result.
19 20 21 22 23 24 |
# File 'lib/rschema/result.rb', line 19 def initialize(valid, value, error) @valid = valid @value = value @error = error freeze end |
Class Method Details
.failure(error = nil) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/rschema/result.rb', line 11 def self.failure(error = nil) if error.nil? NIL_FAILURE else new(false, nil, error) end end |
.success(value = nil) ⇒ Object
3 4 5 6 7 8 9 |
# File 'lib/rschema/result.rb', line 3 def self.success(value = nil) if value.nil? NIL_SUCCESS else new(true, value, nil) end end |
Instance Method Details
#error ⇒ Object
42 43 44 |
# File 'lib/rschema/result.rb', line 42 def error @error end |
#invalid? ⇒ Boolean
30 31 32 |
# File 'lib/rschema/result.rb', line 30 def invalid? not valid? end |
#valid? ⇒ Boolean
26 27 28 |
# File 'lib/rschema/result.rb', line 26 def valid? @valid end |
#value ⇒ Object
34 35 36 37 38 39 40 |
# File 'lib/rschema/result.rb', line 34 def value if valid? @value else raise InvalidError end end |