Copyright | (c) Galois Inc 2019-2020 |
---|---|
License | BSD3 |
Maintainer | rdockins@galois.com |
Safe Haskell | None |
Language | Haskell2010 |
Documentation
data ArrayUpdateMap e ctx tp Source #
Instances
TestEquality e => Eq (ArrayUpdateMap e ctx tp) Source # | |
Defined in What4.Expr.ArrayUpdateMap (==) :: ArrayUpdateMap e ctx tp -> ArrayUpdateMap e ctx tp -> Bool # (/=) :: ArrayUpdateMap e ctx tp -> ArrayUpdateMap e ctx tp -> Bool # | |
TestEquality e => Hashable (ArrayUpdateMap e ctx tp) Source # | |
Defined in What4.Expr.ArrayUpdateMap hashWithSalt :: Int -> ArrayUpdateMap e ctx tp -> Int # hash :: ArrayUpdateMap e ctx tp -> Int # |
arrayUpdateAbs :: ArrayUpdateMap e ct tp -> Maybe (AbstractValue tp) Source #
empty :: ArrayUpdateMap e ctx tp Source #
null :: ArrayUpdateMap e ctx tp -> Bool Source #
lookup :: Assignment IndexLit ctx -> ArrayUpdateMap e ctx tp -> Maybe (e tp) Source #
filter :: (e tp -> Bool) -> ArrayUpdateMap e ctx tp -> ArrayUpdateMap e ctx tp Source #
singleton :: (HashableF e, HasAbsValue e) => BaseTypeRepr tp -> Assignment IndexLit ctx -> e tp -> ArrayUpdateMap e ctx tp Source #
insert :: (HashableF e, HasAbsValue e) => BaseTypeRepr tp -> Assignment IndexLit ctx -> e tp -> ArrayUpdateMap e ctx tp -> ArrayUpdateMap e ctx tp Source #
delete :: Assignment IndexLit ctx -> ArrayUpdateMap e ctx tp -> ArrayUpdateMap e ctx tp Source #
fromAscList :: (HasAbsValue e, HashableF e) => BaseTypeRepr tp -> [(Assignment IndexLit ctx, e tp)] -> ArrayUpdateMap e ctx tp Source #
toList :: ArrayUpdateMap e ctx tp -> [(Assignment IndexLit ctx, e tp)] Source #
toMap :: ArrayUpdateMap e ctx tp -> Map (Assignment IndexLit ctx) (e tp) Source #
keysSet :: ArrayUpdateMap e ctx tp -> Set (Assignment IndexLit ctx) Source #
traverseArrayUpdateMap :: Applicative m => (e tp -> m (f tp)) -> ArrayUpdateMap e ctx tp -> m (ArrayUpdateMap f ctx tp) Source #
mergeM :: (Applicative m, HashableF g, HasAbsValue g) => BaseTypeRepr tp -> (Assignment IndexLit ctx -> e tp -> f tp -> m (g tp)) -> (Assignment IndexLit ctx -> e tp -> m (g tp)) -> (Assignment IndexLit ctx -> f tp -> m (g tp)) -> ArrayUpdateMap e ctx tp -> ArrayUpdateMap f ctx tp -> m (ArrayUpdateMap g ctx tp) Source #