module Channel::SelectAction(S)

Defined in:

Instance Method Summary

Instance Method Detail

def create_context_and_wait(shared_state) #

def default_result #

Implementor that returns Channel::UseDefault in #execute must redefine #default_result


abstract def execute : DeliveryState #

abstract def lock #

abstract def lock_object_id #

abstract def result : S #

abstract def unlock #

def unwait(context : SelectContext(S)) #

def unwait(context : SelectContext) #

idem wait_result/wait_result_impl


abstract def unwait_impl(context : SelectContext(S)) #

abstract def wait(context : SelectContext(S)) #

def wait_result(context : SelectContext(S)) #

def wait_result(context : SelectContext) #

wait_result overload allow implementors to define wait_result_impl with the right type and Channel.select_impl to allow dispatching over unions that will not happen


abstract def wait_result_impl(context : SelectContext(S)) #