Sha256: 6bb935ea081cd72d2bdc748f048e97501daa5684c951f4cf395dbb5828ce8557
Contents?: true
Size: 797 Bytes
Versions: 2
Compression:
Stored size: 797 Bytes
Contents
# typed: strict # frozen_string_literal: true module Typed # Represents a failed result. Contains error information but no payload. class Failure < Result extend T::Sig extend T::Generic Payload = type_member Error = type_member sig { override.returns(T.nilable(Error)) } attr_reader :error sig { params(error: T.nilable(Error)).void } def initialize(error: nil) @error = error super() end sig { override.returns(T::Boolean) } def success? false end sig { override.returns(T::Boolean) } def failure? true end sig { override.returns(T.nilable(Payload)) } def payload nil end sig { override.returns(Payload) } def payload! raise NoPayloadOnFailureError end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
sorbet-result-0.2.1 | lib/typed/failure.rb |
sorbet-result-0.2.0 | lib/typed/failure.rb |