summary refs log tree commit diff stats
path: root/lib/system.nim
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2018-01-04 15:59:10 +0100
committerAndreas Rumpf <rumpf_a@web.de>2018-01-04 15:59:10 +0100
commit464d037c1758243664d46595ab4bd800d86e041f (patch)
tree2885cc822fa362f6f5b8603b882feab6e0a02a18 /lib/system.nim
parent2e635ab28cb60be5e63e01ecf074596ccc385696 (diff)
parent2cf94fe7e74afcd48aa8ee19f59231baf56737d6 (diff)
downloadNim-464d037c1758243664d46595ab4bd800d86e041f.tar.gz
Merge branch 'devel' of github.com:nim-lang/Nim into devel
Diffstat (limited to 'lib/system.nim')
-rw-r--r--lib/system.nim12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/system.nim b/lib/system.nim
index 85643891b..4d8610737 100644
--- a/lib/system.nim
+++ b/lib/system.nim
@@ -743,6 +743,18 @@ proc newSeqOfCap*[T](cap: Natural): seq[T] {.
   ## ``cap``.
   discard
 
+when not defined(JS):
+  proc newSeqUninitialized*[T: SomeNumber](len: Natural): seq[T] =
+    ## creates a new sequence of type ``seq[T]`` with length ``len``.
+    ##
+    ## Only available for numbers types. Note that the sequence will be
+    ## uninitialized. After the creation of the sequence you should assign
+    ## entries to the sequence instead of adding them.
+
+    result = newSeqOfCap[T](len)
+    var s = cast[PGenericSeq](result)
+    s.len = len
+
 proc len*[TOpenArray: openArray|varargs](x: TOpenArray): int {.
   magic: "LengthOpenArray", noSideEffect.}
 proc len*(x: string): int {.magic: "LengthStr", noSideEffect.}