crucible-0.7: Crucible is a library for language-agnostic symbolic simulation
Copyright(c) Galois Inc 2015-2016
LicenseBSD3
MaintainerJoe Hendrix <jhendrix@galois.com>
Stabilityprovisional
Safe HaskellSafe-Inferred
LanguageHaskell2010

Lang.Crucible.Utils.BitSet

Description

This module provides a simple bitset datastructure built on top of GHC-native Integers.

Documentation

data BitSet a Source #

Instances

Instances details
Show (BitSet a) Source # 
Instance details

Defined in Lang.Crucible.Utils.BitSet

Methods

showsPrec :: Int -> BitSet a -> ShowS #

show :: BitSet a -> String #

showList :: [BitSet a] -> ShowS #

Eq (BitSet a) Source # 
Instance details

Defined in Lang.Crucible.Utils.BitSet

Methods

(==) :: BitSet a -> BitSet a -> Bool #

(/=) :: BitSet a -> BitSet a -> Bool #

Ord (BitSet a) Source # 
Instance details

Defined in Lang.Crucible.Utils.BitSet

Methods

compare :: BitSet a -> BitSet a -> Ordering #

(<) :: BitSet a -> BitSet a -> Bool #

(<=) :: BitSet a -> BitSet a -> Bool #

(>) :: BitSet a -> BitSet a -> Bool #

(>=) :: BitSet a -> BitSet a -> Bool #

max :: BitSet a -> BitSet a -> BitSet a #

min :: BitSet a -> BitSet a -> BitSet a #

Hashable (BitSet a) Source # 
Instance details

Defined in Lang.Crucible.Utils.BitSet

Methods

hashWithSalt :: Int -> BitSet a -> Int #

hash :: BitSet a -> Int #

singleton :: Enum a => a -> BitSet a Source #

insert :: Enum a => a -> BitSet a -> BitSet a Source #

remove :: Enum a => a -> BitSet a -> BitSet a Source #

member :: Enum a => a -> BitSet a -> Bool Source #

union :: BitSet a -> BitSet a -> BitSet a Source #

toList :: Enum a => BitSet a -> [a] Source #

foldr :: Enum a => (a -> b -> b) -> b -> BitSet a -> b Source #

foldl :: Enum a => (b -> a -> b) -> b -> BitSet a -> b Source #

foldl' :: Enum a => (b -> a -> b) -> b -> BitSet a -> b Source #