summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2014-09-24 03:01:16 +0200
committerAraq <rumpf_a@web.de>2014-09-24 03:01:16 +0200
commitdfd73902772a0236e09cae534ba98f1a58c194ad (patch)
tree2e3a0b53fcc155b28fa17e96ead6adb27b65ea67
parent8930ba50b99be7cd508a5d3284ef278ccb736767 (diff)
downloadNim-dfd73902772a0236e09cae534ba98f1a58c194ad.tar.gz
added $* for subexes
-rw-r--r--doc/subexes.txt2
-rw-r--r--lib/pure/subexes.nim3
2 files changed, 5 insertions, 0 deletions
diff --git a/doc/subexes.txt b/doc/subexes.txt
index 7cad183b9..decf30eef 100644
--- a/doc/subexes.txt
+++ b/doc/subexes.txt
@@ -16,10 +16,12 @@ Notation                meaning
 ``$name``               use named argument, you can wrap the named argument
                         in curly braces (eg. ``${name}``) to separate it from
                         the next characters.
+``$$``                  produces a single ``$``
 ``$1``                  use first argument
 ``$-1``                 use last argument
 ``${1..3}``             use arguments 1 to 3
 ``${..}``               use all arguments
+``$*``                  use all arguments (same as ``${..}``)
 ``${#..}``              use all remaining arguments
 ``${..-2}``             use all arguments except the last argument
 ``${$1}``               use argument X where ``X = parseInt(arg[1])``
diff --git a/lib/pure/subexes.nim b/lib/pure/subexes.nim
index 452978c09..c87823926 100644
--- a/lib/pure/subexes.nim
+++ b/lib/pure/subexes.nim
@@ -196,6 +196,9 @@ proc scanDollar(p: var TFormatParser, a: openarray[string], s: var string) =
   of '$': 
     emitChar p, s, '$'
     inc i
+  of '*':
+    for j in 0..a.high: emitStr p, s, a[j]
+    inc i
   of '{':
     call:
       let (x, y) = scanSlice(p, a)