[commit: containers] master: Improve query functions of IntMap and IntSet. (9be5ec2)
Paolo Capriotti
p.capriotti at gmail.com
Thu Jul 19 21:12:09 CEST 2012
Repository : ssh://darcs.haskell.org//srv/darcs/packages/containers
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/9be5ec295996794259189db969efa39bc7378b54
>---------------------------------------------------------------
commit 9be5ec295996794259189db969efa39bc7378b54
Author: Milan Straka <fox at ucw.cz>
Date: Fri Apr 20 18:18:55 2012 +0200
Improve query functions of IntMap and IntSet.
As documented in the Note: Local 'go' functions and capturing,
it is safe to use captured key argument in query functions.
Also, in order to decrease allocation, the query functions in IntMap
are manually inlined, so 'member' does not have to call 'lookup'
and heap-allocate 'Just a'.
Tests of query functions are much improved too.
Data/IntMap/Base.hs | 61 ++++++++++++++++++++++++++-----------------
Data/IntMap/Strict.hs | 13 ++++++---
Data/IntSet.hs | 1 +
tests/intmap-properties.hs | 36 ++++++++++++++++++--------
tests/intset-properties.hs | 14 +++++++++-
5 files changed, 85 insertions(+), 40 deletions(-)
Diff suppressed because of size. To see it, use:
git show 9be5ec295996794259189db969efa39bc7378b54
More information about the Cvs-libraries
mailing list