This commit is contained in:
Araq
2014-08-31 01:07:58 +02:00
parent c9563d28a8
commit 09ab1703e1
6 changed files with 30 additions and 13 deletions

View File

@@ -130,7 +130,7 @@ proc mget*[A](s: var HashSet[A], key: A): var A =
## for sharing.
assert s.isValid, "The set needs to be initialized."
var index = rawGet(s, key)
if index >= 0: result = t.data[index].key
if index >= 0: result = s.data[index].key
else: raise newException(KeyError, "key not found: " & $key)
proc contains*[A](s: HashSet[A], key: A): bool =

View File

@@ -874,13 +874,13 @@ proc contains*[T](s: Slice[T], value: T): bool {.noSideEffect, inline.} =
## assert((1..3).contains(4) == false)
result = s.a <= value and value <= s.b
template `in` * (x, y: expr): expr {.immediate.} = contains(y, x)
template `in` * (x, y: expr): expr {.immediate, dirty.} = contains(y, x)
## Sugar for contains
##
## .. code-block:: Nim
## assert(1 in (1..3) == true)
## assert(5 in (1..3) == false)
template `notin` * (x, y: expr): expr {.immediate.} = not contains(y, x)
template `notin` * (x, y: expr): expr {.immediate, dirty.} = not contains(y, x)
## Sugar for not containing
##
## .. code-block:: Nim

View File

@@ -21,7 +21,7 @@ proc popFrame {.compilerRtl, inl.} = discard
proc setFrame(s: PFrame) {.compilerRtl, inl.} = discard
proc pushSafePoint(s: PSafePoint) {.compilerRtl, inl.} = discard
proc popSafePoint {.compilerRtl, inl.} = discard
proc pushCurrentException(e: ref E_Base) {.compilerRtl, inl.} = discard
proc pushCurrentException(e: ref Exception) {.compilerRtl, inl.} = discard
proc popCurrentException {.compilerRtl, inl.} = discard
# some platforms have native support for stack traces:
@@ -32,7 +32,7 @@ const
proc quitOrDebug() {.inline.} =
quit(1)
proc raiseException(e: ref E_Base, ename: CString) {.compilerRtl.} =
proc raiseException(e: ref Exception, ename: cstring) {.compilerRtl.} =
sysFatal(ENoExceptionToReraise, "exception handling is not available")
proc reraiseException() {.compilerRtl.} =