diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2017-05-16 15:43:09 +0200 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2017-05-16 15:43:09 +0200 |
commit | c3c37dbb1574db5078b86be29804990d153ec1c1 (patch) | |
tree | 7c042f1163b6c10910070599dc55f9c14341236e /lib/pure/asyncdispatch.nim | |
parent | 2d91c04f4eea1f0768b305b4903b4c455b9d06e8 (diff) | |
parent | 224eec595a6112c7aa3a4c06afacc99167580464 (diff) | |
download | Nim-c3c37dbb1574db5078b86be29804990d153ec1c1.tar.gz |
Merge branch 'devel' into araq
Diffstat (limited to 'lib/pure/asyncdispatch.nim')
-rw-r--r-- | lib/pure/asyncdispatch.nim | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/pure/asyncdispatch.nim b/lib/pure/asyncdispatch.nim index 6a877be30..1697384e0 100644 --- a/lib/pure/asyncdispatch.nim +++ b/lib/pure/asyncdispatch.nim @@ -9,7 +9,7 @@ include "system/inclrtl" -import os, oids, tables, strutils, times, heapqueue, options +import os, tables, strutils, times, heapqueue, options import nativesockets, net, deques @@ -242,6 +242,11 @@ when defined(windows) or defined(nimdoc): if gDisp.isNil: gDisp = newDispatcher() result = gDisp + proc setGlobalDispatcher*(disp: PDispatcher) = + if not gDisp.isNil: + assert gDisp.callbacks.len == 0 + gDisp = disp + proc register*(fd: AsyncFD) = ## Registers ``fd`` with the dispatcher. let p = getGlobalDispatcher() @@ -931,6 +936,11 @@ else: if gDisp.isNil: gDisp = newDispatcher() result = gDisp + proc setGlobalDispatcher*(disp: PDispatcher) = + if not gDisp.isNil: + assert gDisp.callbacks.len == 0 + gDisp = disp + proc update(fd: AsyncFD, events: set[Event]) = let p = getGlobalDispatcher() assert fd.SocketHandle in p.selector |