class BCDD::Result::Context < BCDD::Result EXPECTED_OUTCOME: String SubjectMethodArity: ^(Method) -> Integer attr_reader acc: Hash[Symbol, untyped] def initialize: ( type: Symbol, value: untyped, ?subject: untyped, ?expectations: BCDD::Result::Contract::Evaluator, ?halted: bool ) -> void def and_then: (?Symbol, **untyped) ?{ (Hash[Symbol, untyped]) -> untyped } -> BCDD::Result::Context private def call_and_then_subject_method: (Symbol, Hash[Symbol, untyped]) -> BCDD::Result::Context def ensure_result_object: (untyped, origin: Symbol) -> BCDD::Result::Context def raise_unexpected_outcome_error: (BCDD::Result::Context | untyped, Symbol) -> void end class BCDD::Result::Context class Success < BCDD::Result::Context include BCDD::Result::Success::Methods def and_expose: (Symbol, Array[Symbol], halted: bool) -> BCDD::Result::Context::Success end def self.Success: (Symbol, **untyped) -> BCDD::Result::Context::Success end class BCDD::Result::Context class Failure < BCDD::Result::Context include BCDD::Result::Failure::Methods def and_expose: (Symbol, Array[Symbol], **untyped) -> BCDD::Result::Context::Failure end def self.Failure: (Symbol, **untyped) -> BCDD::Result::Context::Failure end class BCDD::Result::Context module Mixin Factory: singleton(BCDD::Result::Mixin::Factory) module Methods def Success: (Symbol, **untyped) -> BCDD::Result::Context::Success def Failure: (Symbol, **untyped) -> BCDD::Result::Context::Failure private def _ResultAs: (singleton(BCDD::Result::Context), Symbol, untyped, ?halted: bool) -> untyped end module Addons module Continuable include BCDD::Result::Context::Mixin::Methods private def Continue: (**untyped) -> BCDD::Result::Context::Success end OPTIONS: Hash[Symbol, Module] def self.options: (Hash[Symbol, Hash[Symbol, bool]]) -> Hash[Symbol, Module] end end def self.mixin_module: -> singleton(BCDD::Result::Context::Mixin) def self.result_factory: -> singleton(BCDD::Result::Context) end class BCDD::Result::Context::Expectations < BCDD::Result::Expectations def self.mixin_module: -> singleton(BCDD::Result::Context::Expectations::Mixin) def self.result_factory_without_expectations: -> singleton(BCDD::Result) def Success: (Symbol, **untyped) -> BCDD::Result::Context::Success def Failure: (Symbol, **untyped) -> BCDD::Result::Context::Failure end module BCDD::Result::Context::Expectations::Mixin Methods: singleton(BCDD::Result::Expectations::Mixin::Methods) Factory: singleton(BCDD::Result::Expectations::Mixin::Factory) module Addons module Continuable private def Continue: (**untyped) -> BCDD::Result::Context::Success end OPTIONS: Hash[Symbol, Module] def self.options: (Hash[Symbol, Hash[Symbol, bool]]) -> Hash[Symbol, Module] end end