summary refs log tree commit diff stats
path: root/tests/run/tgenerics1.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/run/tgenerics1.nim')
-rwxr-xr-xtests/run/tgenerics1.nim53
1 files changed, 0 insertions, 53 deletions
diff --git a/tests/run/tgenerics1.nim b/tests/run/tgenerics1.nim
deleted file mode 100755
index 5d20a864b..000000000
--- a/tests/run/tgenerics1.nim
+++ /dev/null
@@ -1,53 +0,0 @@
-discard """
-  output: "100 0"
-"""
-
-# A min-heap.
-type
-  TNode[T] = tuple[priority: int, data: T]
-
-  TBinHeap[T] = object
-    heap: seq[TNode[T]]
-    last: int
-  
-  PBinHeap[T] = ref TBinHeap[T]
-
-proc newBinHeap*[T](heap: var PBinHeap[T], size: int) =
-  new(heap)
-  heap.last = 0
-  newSeq(heap.heap, size)
-  #newSeq(heap.seq, size)
- 
-proc parent(elem: int): int {.inline.} =
-  return (elem-1) div 2
-
-proc siftUp[T](heap: PBinHeap[T], elem: int) =
-  var idx = elem
-  while idx != 0:
-    var p = parent(idx)
-    if heap.heap[idx].priority < heap.heap[p].priority:
-      swap(heap.heap[idx], heap.heap[p])
-      idx = p
-    else:
-      break
-
-proc add*[T](heap: PBinHeap[T], priority: int, data: T) =
-  var node: TNode[T]
-  node.priority = priority
-  node.data = data
-  heap.heap[heap.last] = node
-  siftUp(heap, heap.last)
-  inc(heap.last)
-
-proc print*[T](heap: PBinHeap[T]) =
-  for i in countup(0, heap.last):
-    stdout.write($heap.heap[i].data, " ")
-
-var
-  heap: PBinHeap[int]
-
-newBinHeap(heap, 256)
-add(heap, 1, 100)
-print(heap)
-
-