PreviousUpNext

15.3.799  src/lib/x-kit/xclient/src/wire/outbuf-ximp.api

## outbuf-ximp.api
#
# For the big picture see the imp dataflow diagrams in
#
#     src/lib/x-kit/xclient/src/window/xclient-ximps.pkg

# Compiled by:
#     src/lib/x-kit/xclient/xclient-internals.sublib




                                                                                                # xevent_types                          is from   src/lib/x-kit/xclient/src/wire/xevent-types.pkg
                                                                                                # xerrors                               is from   src/lib/x-kit/xclient/src/wire/xerrors.pkg

stipulate
    include package   threadkit;                                                                # threadkit                             is from   src/lib/src/lib/thread-kit/src/core-thread-kit/threadkit.pkg
    #
    package mps =  microthread_preemptive_scheduler;                                            # microthread_preemptive_scheduler      is from   src/lib/src/lib/thread-kit/src/core-thread-kit/microthread-preemptive-scheduler.pkg
    #
    package un  =  unt;                                                                         # unt                                   is from   src/lib/std/unt.pkg
    package uid =  issue_unique_id;                                                             # issue_unique_id                       is from   src/lib/src/issue-unique-id.pkg
#   package wv8 =  rw_vector_of_one_byte_unts;                                                  # rw_vector_of_one_byte_unts            is from   src/lib/std/src/rw-vector-of-one-byte-unts.pkg
    package psx =  posixlib;                                                                    # posixlib                              is from   src/lib/std/src/psx/posixlib.pkg
    package e2s =  xerror_to_string;                                                            # xerror_to_string                      is from   src/lib/x-kit/xclient/src/to-string/xerror-to-string.pkg
    package op  =  xsequencer_to_outbuf;                                                        # xsequencer_to_outbuf                  is from   src/lib/x-kit/xclient/src/wire/xsequencer-to-outbuf.pkg
    package skj =  socket_junk;                                                                 # socket_junk                           is from   src/lib/internet/socket-junk.pkg
    package sok =  socket__premicrothread;                                                      # socket__premicrothread                is from   src/lib/std/socket--premicrothread.pkg
    package v1u =  vector_of_one_byte_unts;                                                     # vector_of_one_byte_unts               is from   src/lib/std/src/vector-of-one-byte-unts.pkg
    package v2w =  value_to_wire;                                                               # value_to_wire                         is from   src/lib/x-kit/xclient/src/wire/value-to-wire.pkg
    package w2v =  wire_to_value;                                                               # wire_to_value                         is from   src/lib/x-kit/xclient/src/wire/wire-to-value.pkg
    #
    package g2d =  geometry2d;                                                                  # geometry2d                            is from   src/lib/std/2d/geometry2d.pkg
    package xtr =  xlogger;                                                                     # xlogger                               is from   src/lib/x-kit/xclient/src/stuff/xlogger.pkg
    #
    trace =  xtr::log_if  xtr::io_logging  0;                                                   # Conditionally write strings to tracing.log or whatever.
herein


    # This api is implemented in:
    #
    #     src/lib/x-kit/xclient/src/wire/outbuf-ximp.pkg
    #
    api Outbuf_Ximp
    {
        Exports   = {                                                                           # Ports we provide for use by other imps.
                      xsequencer_to_outbuf:    op::Xsequencer_To_Outbuf
                    };

        Imports = {  };                                                                         # Ports we use, provided by other imps. 

        Option =  MICROTHREAD_NAME String;                                                      # 

        Outbuf_Egg =  Void -> (Exports,   (Imports, Run_Gun, End_Gun) -> Void);

        make_outbuf_egg
            :
            ( (sok::Socket (X, sok::Stream(sok::Active))),                                      # Socket to write.
              List(Option)
            )
            -> Outbuf_Egg;                                                                      # 
    };                                                                                          # api Outbuf_Ximp
end;




Comments and suggestions to: bugs@mythryl.org

PreviousUpNext