diff options
author | Arun Isaac | 2021-03-06 01:00:09 +0530 |
---|---|---|
committer | Arun Isaac | 2021-03-06 02:11:57 +0530 |
commit | 3df1beff308d8b0fdbc6a32cf17dc5908d39fcb8 (patch) | |
tree | a54e1392edf9baec8c4e44123680a40f6339a30c | |
parent | d09c5227b2fb8ab2747e3e57ad90c5f0976211f9 (diff) | |
download | ccwl-3df1beff308d8b0fdbc6a32cf17dc5908d39fcb8.tar.gz ccwl-3df1beff308d8b0fdbc6a32cf17dc5908d39fcb8.tar.lz ccwl-3df1beff308d8b0fdbc6a32cf17dc5908d39fcb8.zip |
Introduce <command> type.
* ccwl/ccwl.scm (<command>): New type.
(command): New function.
-rw-r--r-- | ccwl/ccwl.scm | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/ccwl/ccwl.scm b/ccwl/ccwl.scm index 1d44dfc..e73b9e6 100644 --- a/ccwl/ccwl.scm +++ b/ccwl/ccwl.scm @@ -9,6 +9,7 @@ #:use-module (srfi srfi-9 gnu) #:use-module (ice-9 match) #:export (clitool + command workflow input output @@ -126,6 +127,24 @@ (in step-in set-step-in) (out step-out set-step-out)) +(define-immutable-record-type <command> + (make-command inputs outputs args stdin other) + command? + (inputs command-inputs set-command-inputs) + (outputs command-outputs set-command-outputs) + (args command-args) + (stdin command-stdin set-command-stdin) + (other command-other)) + +(define* (command id arguments #:key (additional-inputs '()) (outputs '()) (other '())) + (make-step id + (make-command (append (filter input? arguments) + additional-inputs) + outputs arguments #f other) + (append (filter input? arguments) + additional-inputs) + outputs)) + "Build a Workflow class CWL workflow." `((cwlVersion . "v1.1") (class . Workflow) |