gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnunet-scheme] 15/42: server: New procedure for making the arguments to


From: gnunet
Subject: [gnunet-scheme] 15/42: server: New procedure for making the arguments to make-loop.
Date: Sat, 10 Sep 2022 19:08:08 +0200

This is an automated email from the git hooks/post-receive script.

maxime-devos pushed a commit to branch master
in repository gnunet-scheme.

commit a543420dbbf1e397527f7e0d644cf0e2c3c1937f
Author: Maxime Devos <maximedevos@telenet.be>
AuthorDate: Thu Sep 8 22:40:15 2022 +0200

    server: New procedure for making the arguments to make-loop.
    
    Space savings! ... actually, one extra line, but once CADET is
    converted it should be good again.
    
    * gnu/gnunet/server.scm (server->loop-arguments): New procedure.
    * gnu/gnunet/nse/client.scm (connect)[loop]: Use it.
    * gnu/gnunet/dht/client.scm (connect)[loop]: Likewise.
---
 gnu/gnunet/dht/client.scm | 24 +++++++++++-------------
 gnu/gnunet/nse/client.scm | 28 +++++++++++++---------------
 gnu/gnunet/server.scm     |  7 ++++++-
 3 files changed, 30 insertions(+), 29 deletions(-)

diff --git a/gnu/gnunet/dht/client.scm b/gnu/gnunet/dht/client.scm
index 992e3d7..7b25a65 100644
--- a/gnu/gnunet/dht/client.scm
+++ b/gnu/gnunet/dht/client.scm
@@ -87,7 +87,7 @@
                make-loop loop:control-channel loop:connected
                loop:disconnected loop:configuration loop:service-name
                loop:spawner loop:terminal-condition loop:lost-and-found
-               loop:control-channel run-loop)
+               loop:control-channel run-loop server->loop-arguments)
          (only (guile)
                pk define-syntax-rule define* lambda* error
                ->bool and=>)
@@ -754,18 +754,16 @@ code automatically tries to reconnect, so @var{connected} 
can be called after
 @var{disconnected}.  This procedure returns a DHT server object."
       (define server (make-server))
       (define loop
-       (make-loop
-        #:make-message-handlers make-message-handlers
-        #:make-error-handler* make-error-handler*/loop
-        #:control-message-handler control-message-handler
-        #:terminal-condition (server-terminal-condition server)
-        #:configuration config
-        #:service-name "dht"
-        #:control-channel (server-control-channel server)
-        #:lost-and-found (losable-lost-and-found server)
-        #:spawn spawn
-        #:connected connected
-        #:disconnected disconnected #:spawn spawn))
+       (apply make-loop
+              #:make-message-handlers make-message-handlers
+              #:make-error-handler* make-error-handler*/loop
+              #:control-message-handler control-message-handler
+              #:configuration config
+              #:service-name "dht"
+              #:spawn spawn
+              #:connected connected
+              #:disconnected disconnected #:spawn spawn
+              (server->loop-arguments server)))
       (spawn (lambda () (run-loop loop empty-bbtree empty-bbtree)))
       server)
 
diff --git a/gnu/gnunet/nse/client.scm b/gnu/gnunet/nse/client.scm
index 9092ba5..3eca4a8 100644
--- a/gnu/gnunet/nse/client.scm
+++ b/gnu/gnunet/nse/client.scm
@@ -70,7 +70,7 @@
                server-control-channel
                make-error-handler*/loop
                handle-control-message!
-               <loop> run-loop
+               <loop> run-loop server->loop-arguments
                loop:connected loop:disconnected
                loop:control-channel loop:terminal-condition)
           (only (gnu gnunet nse struct)
@@ -203,19 +203,17 @@ shortly after calling @var{disconnected}.
 The procedures @var{updated}, @var{connected} and @var{disconnected} are 
optional."
       (define server (%make-server))
       (define loop
-       (make-loop:nse
-        #:make-message-handlers make-message-handlers
-        #:make-error-handler* make-error-handler*/loop
-        #:control-message-handler control-message-handler
-        #:service-name "nse"
-        #:terminal-condition (server-terminal-condition server)
-        #:configuration config
-        #:control-channel (server-control-channel server)
-        #:lost-and-found (losable-lost-and-found server)
-        #:connected connected
-        #:disconnected disconnected
-        #:spawn spawn
-        #:estimate/box (server-estimate/box server)
-        #:updated updated))
+       (apply make-loop:nse
+              #:make-message-handlers make-message-handlers
+              #:make-error-handler* make-error-handler*/loop
+              #:control-message-handler control-message-handler
+              #:service-name "nse"
+              #:configuration config
+              #:connected connected
+              #:disconnected disconnected
+              #:spawn spawn
+              #:estimate/box (server-estimate/box server)
+              #:updated updated
+              (server->loop-arguments server)))
       (spawn (lambda () (run-loop loop)))
       server)))
diff --git a/gnu/gnunet/server.scm b/gnu/gnunet/server.scm
index be592dd..d169813 100644
--- a/gnu/gnunet/server.scm
+++ b/gnu/gnunet/server.scm
@@ -25,7 +25,7 @@
          <server> server-terminal-condition server-control-channel
          make-disconnect!
          handle-control-message!
-         <loop> make-loop
+         <loop> make-loop server->loop-arguments
          loop:connected loop:disconnected loop:terminal-condition
          loop:control-channel loop:configuration loop:service-name
          loop:spawner loop:lost-and-found run-loop)
@@ -198,6 +198,11 @@ asynchronuous request; it won't be fulfilled immediately."
                 spawn terminal-condition control-channel
                 lost-and-found connected disconnected)))))
 
+    (define (server->loop-arguments server)
+      (list #:terminal-condition (server-terminal-condition server)
+           #:control-channel (server-control-channel server)
+           #:lost-and-found (losable-lost-and-found server)))
+
     (define (handle-control-message! message mq terminal-condition 
k/reconnect!)
       "The following messages are handled:
 

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]