packages feed

tamarin-prover-utils 0.8.2.0 → 0.8.4.0

raw patch · 2 files changed

+12/−2 lines, 2 filesnew-uploader

Files

src/Utils/Misc.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE DeriveDataTypeable, RankNTypes, ScopedTypeVariables, BangPatterns #-}+{-# LANGUAGE DeriveDataTypeable, RankNTypes, ScopedTypeVariables, BangPatterns, MagicHash #-} module Utils.Misc (   -- * Environment     envIsSet@@ -20,6 +20,9 @@    -- * Map operations   , invertMap++  -- * unsafeEq+  , unsafeEq ) where  import Data.List@@ -38,6 +41,8 @@ import qualified Data.ByteString.Base64             as B64  (encode) import qualified Blaze.ByteString.Builder.Char.Utf8 as Utf8 (fromString) +import GHC.Exts (reallyUnsafePtrEquality#, Int (I#))+ -- | @noDuplicates xs@ returns @True@ if the list @xs@ contains no duplicates noDuplicates :: (Ord a) => [a] -> Bool noDuplicates xs = all ((==1).length) . group . sort $ xs@@ -87,3 +92,8 @@  setAny :: (a -> Bool) -> Set a -> Bool setAny f = S.foldr (\x b -> f x || b) False+++unsafeEq :: a -> a -> Bool+unsafeEq a b =+  (I# (reallyUnsafePtrEquality# a b)) == 1
tamarin-prover-utils.cabal view
@@ -2,7 +2,7 @@  cabal-version:      >= 1.8 build-type:         Simple-version:            0.8.2.0+version:            0.8.4.0 license:            GPL license-file:       LICENSE category:           Theorem Provers