summary refs log tree commit diff stats
path: root/tests/compile/titer2.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/compile/titer2.nim')
-rw-r--r--tests/compile/titer2.nim51
1 files changed, 0 insertions, 51 deletions
diff --git a/tests/compile/titer2.nim b/tests/compile/titer2.nim
deleted file mode 100644
index dab2713e8..000000000
--- a/tests/compile/titer2.nim
+++ /dev/null
@@ -1,51 +0,0 @@
-discard """
-  output: '''true'''
-  cmd: "nimrod cc --gc:none --hints:on $# $#"
-"""
-
-import hashes
-
-type
-  TSlotEnum = enum seEmpty, seFilled, seDeleted
-  TKeyValuePair[A, B] = tuple[slot: TSlotEnum, key: A, val: B]
-  TKeyValuePairSeq[A, B] = seq[TKeyValuePair[A, B]]
-  TTable* {.final.}[A, B] = object
-    data: TKeyValuePairSeq[A, B]
-    counter: int
-
-iterator mycountup(a, b: int): int =
-  var res = a
-  while res <= b:
-    yield res
-    inc(res)
-
-when true:
-  iterator pairs*[A, B](t: TTable[A, B]): tuple[key: A, val: B] =
-    ## iterates over any (key, value) pair in the table `t`.
-    for h in mycountup(0, high(t.data)):
-      var k = t.data[h].key
-      if t.data[h].slot == seFilled: yield (k, t.data[h].val)
-else:
-  iterator pairs*(t: TTable[int, string]): tuple[key: int, val: string] =
-    ## iterates over any (key, value) pair in the table `t`.
-    for h in mycountup(0, high(t.data)):
-      var k = t.data[h].key
-      if t.data[h].slot == seFilled: yield (k, t.data[h].val)
-
-proc initTable*[A, B](initialSize=64): TTable[A, B] =
-  ## creates a new hash table that is empty. `initialSize` needs to be
-  ## a power of two.
-  result.counter = 0
-  newSeq(result.data, initialSize)
-
-block Test1:
-  # generic cache does not instantiate the same iterator[types] twice. This
-  # means we have only one instantiation of 'h'. However, this is the same for
-  # a non-generic iterator!
-
-  var t = initTable[int, string]()
-  for k, v in t.pairs: nil
-  for k, v in t.pairs: nil
-
-echo "true"
-