prefix() proposal. Closes broadinstitute/cromwell#375 #84

Merged
merged 1 commit into from Jan 17, 2017
Jump to file or symbol
Failed to load files and symbols.
+12 −0
Split
View
12 SPEC.md
@@ -95,6 +95,7 @@
* [Pair(X,Y) zip(X,Y)](#pairxy-zipxy)
* [Pair(X,Y) cross(X,Y)](#pairxy-crossxy)
* [Integer length(Array\[X\])](#integer-lengtharrayx)
+ * [Array\[String\] prefix(String, Array\[String\])](#arraystring-prefixstring-arraystring)
* [Data Types & Serialization](#data-types--serialization)
* [Serialization of Task Inputs](#serialization-of-task-inputs)
* [Primitive Types](#primitive-types)
@@ -2548,6 +2549,17 @@ Array[String] zs = [ ]
Integer xlen = length(xs) # 3
Integer ylen = length(ys) # 3
Integer zlen = length(zs) # 0
+
+## Array[String] prefix(String, Array[String])
+
+:pig2: [Cromwell supported](https://github.com/broadinstitute/cromwell#wdl-support) :white_check_mark:
+
+Given a String and an Array[String], the `prefix` function returns an array of strings comprised of each element of the
+input array prefixed by the specified prefix string. For example:
+
+```
+Array[String] env = ["key1=value1", "key2=value2", "key3=value3"]
+Array[String] env_param = prefix("-e ", env) # ["-e key1=value1", "-e key2=value2", "-e key3=value3"]
```