summary refs log tree commit diff stats
path: root/tests/run/tclosure.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/run/tclosure.nim')
-rwxr-xr-xtests/run/tclosure.nim47
1 files changed, 0 insertions, 47 deletions
diff --git a/tests/run/tclosure.nim b/tests/run/tclosure.nim
deleted file mode 100755
index d9e7b8ee4..000000000
--- a/tests/run/tclosure.nim
+++ /dev/null
@@ -1,47 +0,0 @@
-discard """
-  file: "tclosure.nim"
-  output: "2 4 6 8 10"
-  disabled: true
-"""
-# Test the closure implementation
-
-proc map(n: var openarray[int], fn: proc (x: int): int {.closure}) =
-  for i in 0..n.len-1: n[i] = fn(n[i])
-
-proc foldr(n: openarray[int], fn: proc (x, y: int): int {.closure}): int =
-  for i in 0..n.len-1:
-    result = fn(result, n[i])
-
-proc each(n: openarray[int], fn: proc(x: int) {.closure.}) =
-  for i in 0..n.len-1:
-    fn(n[i])
-
-var
-  myData: array[0..4, int] = [0, 1, 2, 3, 4]
-
-proc testA() =
-  var p = 0
-  map(myData, proc (x: int): int =
-                result = x + 1 shl (proc (y: int): int =
-                  return y + p
-                )(0)
-                inc(p))
-
-testA()
-
-myData.each do (x: int):
-  write(stout, x)
-
-#OUT 2 4 6 8 10
-
-type
-  ITest = tuple[
-    setter: proc(v: Int),
-    getter: proc(): int]
-
-proc getInterf(): ITest =
-  var shared: int
-  
-  return (setter: proc (x) = shared = x,
-          getter: proc (): int = return shared)
-