From: jeanphilippe.bernardy@gmail.com Date: Sat, 11 Mar 2006 08:52:21 +0000 (+0000) Subject: Added notMember to Data.IntSet and Data.IntMap X-Git-Tag: directory_2007-05-24~326 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=6ff8c23c29a6936f7e2f85663ccf5f1709dee181;p=haskell-directory.git Added notMember to Data.IntSet and Data.IntMap --- diff --git a/Data/IntMap.hs b/Data/IntMap.hs index 03a6ab0..decce64 100644 --- a/Data/IntMap.hs +++ b/Data/IntMap.hs @@ -45,6 +45,7 @@ module Data.IntMap ( , null , size , member + , notMember , lookup , findWithDefault @@ -263,6 +264,10 @@ member k m Nothing -> False Just x -> True +-- | /O(log n)/. Is the key not a member of the map? +notMember :: Key -> IntMap a -> Bool +notMember k m = not $ member k m + -- | /O(min(n,W))/. Lookup the value at a key in the map. lookup :: Key -> IntMap a -> Maybe a lookup k t diff --git a/Data/IntSet.hs b/Data/IntSet.hs index 720b937..9053098 100644 --- a/Data/IntSet.hs +++ b/Data/IntSet.hs @@ -46,6 +46,7 @@ module Data.IntSet ( , null , size , member + , notMember , isSubsetOf , isProperSubsetOf @@ -209,6 +210,10 @@ member x t Tip y -> (x==y) Nil -> False +-- | /O(log n)/. Is the element not in the set? +notMember :: Int -> IntSet -> Bool +notMember k = not $ member k + -- 'lookup' is used by 'intersection' for left-biasing lookup :: Int -> IntSet -> Maybe Int lookup k t diff --git a/Data/Map.hs b/Data/Map.hs index 7124cd3..92b21a1 100644 --- a/Data/Map.hs +++ b/Data/Map.hs @@ -275,7 +275,7 @@ member k m -- | /O(log n)/. Is the key not a member of the map? notMember :: Ord k => k -> Map k a -> Bool -notMember k m = not $ Data.Map.member k m +notMember k m = not $ member k m -- | /O(log n)/. Find the value at a key. -- Calls 'error' when the element can not be found. diff --git a/Data/Set.hs b/Data/Set.hs index 9eb30a4..36c7ecd 100644 --- a/Data/Set.hs +++ b/Data/Set.hs @@ -206,8 +206,7 @@ member x t -- | /O(log n)/. Is the element not in the set? notMember :: Ord a => a -> Set a -> Bool -notMember x t = not $ Data.Set.member x t - +notMember x t = not $ member x t {-------------------------------------------------------------------- Construction