From 6b41a04baa5c2ca06c87ef4911dd67ecf73b2824 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 5 Sep 2024 17:00:33 +0100 Subject: command-line-tool: Refactor glob extraction into separate function. * ravanan/command-line-tool.scm (build-command-line-tool-script)[output-binding-glob]: New function. [capture-outputs-gexp]: Use output-binding-glob. --- ravanan/command-line-tool.scm | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/ravanan/command-line-tool.scm b/ravanan/command-line-tool.scm index 5503dd3..47b3903 100644 --- a/ravanan/command-line-tool.scm +++ b/ravanan/command-line-tool.scm @@ -699,6 +699,12 @@ named @var{name} with @var{inputs} using tools from Guix manifest #~(file-name-join* stdout-directory "stdout")) (else #f))) + (define (output-binding-glob output) + (from-maybe + (maybe-assoc-ref (just output) + "outputBinding" "glob") + (raise-error #f "glob output binding not specified"))) + (define run-command-gexp #~(run-command (list #$@(append-map (lambda (arg) (if (command-line-binding? arg) @@ -761,11 +767,7 @@ named @var{name} with @var{inputs} using tools from Guix manifest other-outputs) '#$(map (cut assoc-ref <> "type") other-outputs) - '#$(map (lambda (output) - (from-maybe - (maybe-assoc-ref (just output) - "outputBinding" "glob") - (raise-error #f "glob output binding not specified"))) + '#$(map output-binding-glob other-outputs))))) out #:pretty #t) -- cgit v1.2.3