From b6bc816daff0525f365bac30c4559c983d53ce38 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Wed, 16 Jun 2021 21:41:53 +0200 Subject: [PATCH] Split out experimental "stream" protocols; make tcp.rkt use them; more inertness checks Also, a few other important changes: - Better printing of entity-ref structs - Inertness checks on assertion retraction (!) and preventer-disarm - Correct selection of active facet during dataflow recomputations - Repair silly omission in turn-assert/dataflow! --- stream.prs | 43 +++++++++++++++++++++++++++++++++++++++++++ tcp.prs | 24 +++--------------------- 2 files changed, 46 insertions(+), 21 deletions(-) create mode 100644 stream.prs diff --git a/stream.prs b/stream.prs new file mode 100644 index 0000000..918c8f9 --- /dev/null +++ b/stream.prs @@ -0,0 +1,43 @@ +version 1 . +embeddedType EntityRef.Ref . + +StreamConnection = . + +; Assertion +StreamListener = . + +; Assertion +StreamConnect = . + +; Assertion +ConnectionHandler = + / @connected + / @rejected +. + +; Assertion +StreamError = . + +Source = + ; Assertions: + / + / StreamError + + ; Messages: + / +. + +Sink = + ; Assertions: + / + / StreamError + + ; Messages: + / + / +. + +CreditAmount = @count int / @unbounded =unbounded . + +Mode = =bytes / @lines LineMode / / . +LineMode = =lf / =crlf . diff --git a/tcp.prs b/tcp.prs index 9239133..7a6d5e1 100644 --- a/tcp.prs +++ b/tcp.prs @@ -1,25 +1,7 @@ version 1 . embeddedType EntityRef.Ref . -Connection = . -ConnectionPeer = . +TcpRemote = . +TcpLocal = . -TcpRemote = . -TcpLocal = . - -ActiveSocket = - / - / - / Socket -. - -Socket = - / - / - / -. - -CreditAmount = @count int / @unbounded =unbounded . - -Mode = =bytes / @lines LineMode / . -LineMode = =lf / =crlf . +TcpPeerInfo = .