21 lines
436 B
Text
21 lines
436 B
Text
|
deftype Result.Error, error: Error, as: ->
|
||
|
|
||
|
defstatic <Result.Error> new error: Error, as: ->
|
||
|
Result.Error{ error: error }
|
||
|
end
|
||
|
|
||
|
end
|
||
|
|
||
|
defimpl Result, for: Result.Error, as: ->
|
||
|
def ok? as: -> false
|
||
|
def error? as: -> true
|
||
|
|
||
|
def <Any> unwrap as: ->
|
||
|
Huia.Primitive.panic_process(@error)
|
||
|
end
|
||
|
|
||
|
def <Any> expect message: String, as: ->
|
||
|
Huia.Primitive.panic_process(Error.new(message: message, cause: @error))
|
||
|
end
|
||
|
end
|