summary refs log tree commit diff stats
path: root/tests/run/teventemitter.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/run/teventemitter.nim')
-rw-r--r--tests/run/teventemitter.nim31
1 files changed, 0 insertions, 31 deletions
diff --git a/tests/run/teventemitter.nim b/tests/run/teventemitter.nim
deleted file mode 100644
index 8394776a8..000000000
--- a/tests/run/teventemitter.nim
+++ /dev/null
@@ -1,31 +0,0 @@
-discard """
-  output: "pie"
-"""
-
-import tables, lists
-
-type
-  TEventArgs = object of TObject
-  TEventEmitter = object of TObject
-    events*: TTable[string, TDoublyLinkedList[proc(e: TEventArgs)]]
-
-proc emit*(emitter: TEventEmitter, event: string, args: TEventArgs) =
-  for func in nodes(emitter.events[event]):
-    func.value(args) #call function with args.
-
-proc on*(emitter: var TEventEmitter, event: string, func: proc(e: TEventArgs)) =
-  if not hasKey(emitter.events, event):
-    var list: TDoublyLinkedList[proc(e: TEventArgs)]
-    add(emitter.events, event, list) #if not, add it.
-  append(emitter.events.mget(event), func)
-
-proc initEmitter(emitter: var TEventEmitter) =
-  emitter.events = initTable[string, TDoublyLinkedList[proc(e: TEventArgs)]]()
-
-var 
-  ee: TEventEmitter
-  args: TEventArgs
-initEmitter(ee)
-ee.on("print", proc(e: TEventArgs) = echo("pie"))
-ee.emit("print", args)
-