The standard library mailop package implements mailop values and combinators — basic Mythryl inter-thread communication functionality.
The mailop package implements an extension of the Mailop API.
The mailop package source code is in src/lib/src/lib/thread-kit/src/core-thread-kit/mailop.pkg. The above information is manually maintained and may contain errors.
api { Mailop X = ...; Run_Gun = Mailop(Void ); End_Gun = Mailop(Void ); do_one_mailop : List(Mailop(X ) ) -> X; ==> : (Mailop(X ) , (X -> Y)) -> Mailop(Y ); Replyqueue = {next_id:Ref(Int ), queue:Ref(List(?.mailop::Replyqueue_Entry ) )}; make_replyqueue : Void -> Replyqueue; put_in_replyqueue : (Replyqueue , Mailop(Void )) -> Void; do_one_mailop' : Replyqueue -> List(Mailop(Void ) ) -> Void; replyqueue_to_string : (Replyqueue , String) -> String; dynamic_mailop : (Void -> Mailop(X )) -> Mailop(X ); dynamic_mailop_with_nack : (Mailop(Void ) -> Mailop(X )) -> Mailop(X ); never' : Mailop(X ); always' : X -> Mailop(X ); if_then' : (Mailop(X ) , (X -> Y)) -> Mailop(Y ); make_exception_handling_mailop : (Mailop(X ) , (Exception -> X)) -> Mailop(X ); cat_mailops : List(Mailop(X ) ) -> Mailop(X ); block_until_mailop_fires : Mailop(X ) -> X; set_condvar__iu : ?.internal_threadkit_types::Condition_Variable -> Void; wait_on_condvar' : ?.internal_threadkit_types::Condition_Variable -> Mailop(Void );};