--- a/src/Tools/Haskell/Haskell.thy Tue Aug 24 16:42:45 2021 +0200
+++ b/src/Tools/Haskell/Haskell.thy Tue Aug 24 17:35:29 2021 +0200
@@ -2735,7 +2735,7 @@
module Isabelle.Byte_Message (
write, write_line,
read, read_block, read_line,
- make_message, write_message, read_message,
+ make_message, write_message, read_message, exchange_message,
make_line_message, write_line_message, read_line_message,
read_yxml, write_yxml
)
@@ -2838,6 +2838,11 @@
Just line -> Just <$> mapM (read_chunk socket) (parse_header line)
Nothing -> return Nothing
+exchange_message :: Socket -> [Bytes] -> IO (Maybe [Bytes])
+exchange_message socket msg = do
+ write_message socket msg
+ read_message socket
+
-- hybrid messages: line or length+block (with content restriction)