civodul pushed a commit to branch devel
in repository shepherd.

commit eee9b906b03b1240da012d0953e12e9fc5be6c38
Author: Ludovic Courtès <l...@gnu.org>
AuthorDate: Sun Aug 11 19:17:55 2024 +0200

    service: Add record type printer for <service>.
    
    * modules/shepherd/service.scm (print-service): New procedure.
    <top level>: Call ‘set-record-type-printer!’.
---
 modules/shepherd/service.scm | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/modules/shepherd/service.scm b/modules/shepherd/service.scm
index ada4cee..a53a624 100644
--- a/modules/shepherd/service.scm
+++ b/modules/shepherd/service.scm
@@ -34,6 +34,7 @@
   #:use-module (fibers timers)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-9)
+  #:use-module (srfi srfi-9 gnu)
   #:use-module (srfi srfi-26)
   #:use-module (srfi srfi-34)
   #:use-module ((srfi srfi-35) #:hide (make-condition))
@@ -359,6 +360,13 @@ Log abnormal termination reported by @var{status}."
   ;; requests such as 'start' and 'stop' on this channel.
   (control   %service-control set-service-control!))
 
+(define (print-service service port)
+  (format port "#<service ~a ~a>"
+          (service-provision service)
+          (number->string (object-address service) 16)))
+
+(set-record-type-printer! <service> print-service)
+
 (define* (service provision
                   #:key
                   (requirement '())

Reply via email to