the Networking TS

This library implemented some parts of networking ts, if you are familar with asio, you will find the apis very similar in some way. However, there are a few differences:

  • eof is not an error (in read operations), will just return when eof encountered (catering to the linux kernel interface)
  • error handling via outcome, see Error Handling and Outcome
  • much simpler async_context, comparing to io_context/executors, no scheduler nor executor indeed.
  • support for general fd io, not only networking
  • cancellations not supported (linux kernel support for cancellations is buggy) ...

In addition, some parts of this library is coded 100% compatible to the latest draft standard of networking ts, n4771(http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/n4771.pdf):

  • the whole Buffer module
  • the CompletionCondition