what4-1.1: Solver-agnostic symbolic values support for issuing queries
Copyright(c) Galois Inc 2019-2020
LicenseBSD3
Maintainerrdockins@galois.com
Safe HaskellNone
LanguageHaskell2010

What4.Expr.ArrayUpdateMap

Description

 

Documentation

data ArrayUpdateMap e ctx tp Source #

Instances

Instances details
TestEquality e => Eq (ArrayUpdateMap e ctx tp) Source # 
Instance details

Defined in What4.Expr.ArrayUpdateMap

Methods

(==) :: ArrayUpdateMap e ctx tp -> ArrayUpdateMap e ctx tp -> Bool #

(/=) :: ArrayUpdateMap e ctx tp -> ArrayUpdateMap e ctx tp -> Bool #

Hashable (ArrayUpdateMap e ctx tp) Source # 
Instance details

Defined in What4.Expr.ArrayUpdateMap

Methods

hashWithSalt :: Int -> ArrayUpdateMap e ctx tp -> Int #

hash :: ArrayUpdateMap e ctx tp -> Int #

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 #

insert :: (HashableF e, HasAbsValue e) => BaseTypeRepr tp -> Assignment IndexLit ctx -> e tp -> ArrayUpdateMap e ctx 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 #

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 #