hash() for floats
This commit is contained in:
parent
e9bbc7235d
commit
1852c0548c
2 changed files with 11 additions and 0 deletions
|
|
@ -122,3 +122,7 @@ proc hash*[T: tuple](x: T): THash =
|
||||||
result = result !& hash(f)
|
result = result !& hash(f)
|
||||||
result = !$result
|
result = !$result
|
||||||
|
|
||||||
|
proc hash*(x: float): THash {.inline.} =
|
||||||
|
var y = x + 1.0
|
||||||
|
result = cast[ptr THash](addr(y))[]
|
||||||
|
|
||||||
|
|
|
||||||
7
tests/run/thashes.nim
Normal file
7
tests/run/thashes.nim
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
import unittest
|
||||||
|
import hashes
|
||||||
|
|
||||||
|
suite "hashes":
|
||||||
|
suite "hashing":
|
||||||
|
test "0.0 and -0.0 should have the same hash value":
|
||||||
|
check hash(0.0) == hash(-0.0)
|
||||||
Loading…
Add table
Add a link
Reference in a new issue