small-steps-0.1.0.0: Small step semantics
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.CannonicalMaps

Synopsis

Documentation

class Eq t => CannonicalZero t where Source #

Methods

zeroC :: t Source #

joinC :: t -> t -> t Source #

Instances

Instances details
CannonicalZero Integer Source # 
Instance details

Defined in Data.CannonicalMaps

(Eq k, Eq v, Ord k, CannonicalZero v) => CannonicalZero (Map k v) Source # 
Instance details

Defined in Data.CannonicalMaps

Methods

zeroC :: Map k v Source #

joinC :: Map k v -> Map k v -> Map k v Source #

cannonicalInsert :: (Ord k, CannonicalZero a) => (a -> a -> a) -> k -> a -> Map k a -> Map k a Source #

cannonicalMapUnion :: (Ord k, CannonicalZero a) => (a -> a -> a) -> Map k a -> Map k a -> Map k a Source #

cannonicalMap :: (Ord k, CannonicalZero a) => (a -> a) -> Map k a -> Map k a Source #

pointWise :: (Ord k, CannonicalZero v) => (v -> v -> Bool) -> Map k v -> Map k v -> Bool Source #

data Map k a #

A Map from keys k to values a.

The Semigroup operation for Map is union, which prefers values from the left operand. If m1 maps a key k to a value a1, and m2 maps the same key to a different value a2, then their union m1 <> m2 maps k to a1.

Instances

Instances details
Bifoldable Map

Since: containers-0.6.3.1

Instance details

Defined in Data.Map.Internal

Methods

bifold :: Monoid m => Map m m -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Map a b -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Map a b -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Map a b -> c #

Eq2 Map

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> Map a c -> Map b d -> Bool #

Ord2 Map

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> Map a c -> Map b d -> Ordering #

Show2 Map

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftShowsPrec2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> Int -> Map a b -> ShowS #

liftShowList2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> [Map a b] -> ShowS #

Hashable2 Map

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

liftHashWithSalt2 :: (Int -> a -> Int) -> (Int -> b -> Int) -> Int -> Map a b -> Int Source #

Iter Map Source # 
Instance details

Defined in Control.Iterate.SetAlgebra

Methods

nxt :: Map a b -> Collect (a, b, Map a b) Source #

lub :: Ord k => k -> Map k b -> Collect (k, b, Map k b) Source #

hasNxt :: Map a b -> Maybe (a, b, Map a b) Source #

hasLub :: Ord k => k -> Map k b -> Maybe (k, b, Map k b) Source #

haskey :: Ord key => key -> Map key b -> Bool Source #

isnull :: Map k v -> Bool Source #

lookup :: Ord key => key -> Map key rng -> Maybe rng Source #

element :: Ord k => k -> Map k v -> Collect () Source #

Basic Map Source # 
Instance details

Defined in Control.Iterate.SetAlgebra

Methods

addpair :: Ord k => k -> v -> Map k v -> Map k v Source #

addkv :: Ord k => (k, v) -> Map k v -> (v -> v -> v) -> Map k v Source #

removekey :: Ord k => k -> Map k v -> Map k v Source #

domain :: Ord k => Map k v -> Set k Source #

range :: Ord v => Map k v -> Set v Source #

emptyc :: Ord k => Map k v Source #

Functor (Map k) 
Instance details

Defined in Data.Map.Internal

Methods

fmap :: (a -> b) -> Map k a -> Map k b #

(<$) :: a -> Map k b -> Map k a #

Foldable (Map k)

Folds in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

fold :: Monoid m => Map k m -> m #

foldMap :: Monoid m => (a -> m) -> Map k a -> m #

foldMap' :: Monoid m => (a -> m) -> Map k a -> m #

foldr :: (a -> b -> b) -> b -> Map k a -> b #

foldr' :: (a -> b -> b) -> b -> Map k a -> b #

foldl :: (b -> a -> b) -> b -> Map k a -> b #

foldl' :: (b -> a -> b) -> b -> Map k a -> b #

foldr1 :: (a -> a -> a) -> Map k a -> a #

foldl1 :: (a -> a -> a) -> Map k a -> a #

toList :: Map k a -> [a] #

null :: Map k a -> Bool #

length :: Map k a -> Int #

elem :: Eq a => a -> Map k a -> Bool #

maximum :: Ord a => Map k a -> a #

minimum :: Ord a => Map k a -> a #

sum :: Num a => Map k a -> a #

product :: Num a => Map k a -> a #

Traversable (Map k)

Traverses in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

traverse :: Applicative f => (a -> f b) -> Map k a -> f (Map k b) #

sequenceA :: Applicative f => Map k (f a) -> f (Map k a) #

mapM :: Monad m => (a -> m b) -> Map k a -> m (Map k b) #

sequence :: Monad m => Map k (m a) -> m (Map k a) #

Eq k => Eq1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftEq :: (a -> b -> Bool) -> Map k a -> Map k b -> Bool #

Ord k => Ord1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftCompare :: (a -> b -> Ordering) -> Map k a -> Map k b -> Ordering #

(Ord k, Read k) => Read1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Map k a) #

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Map k a] #

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Map k a) #

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Map k a] #

Show k => Show1 (Map k)

Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Map k a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Map k a] -> ShowS #

Hashable k => Hashable1 (Map k)

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> Map k a -> Int Source #

Ord k => IsList (Map k v)

Since: containers-0.5.6.2

Instance details

Defined in Data.Map.Internal

Associated Types

type Item (Map k v) #

Methods

fromList :: [Item (Map k v)] -> Map k v #

fromListN :: Int -> [Item (Map k v)] -> Map k v #

toList :: Map k v -> [Item (Map k v)] #

(Eq k, Eq a) => Eq (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

(==) :: Map k a -> Map k a -> Bool #

(/=) :: Map k a -> Map k a -> Bool #

(Data k, Data a, Ord k) => Data (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Map k a -> c (Map k a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Map k a) #

toConstr :: Map k a -> Constr #

dataTypeOf :: Map k a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Map k a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Map k a)) #

gmapT :: (forall b. Data b => b -> b) -> Map k a -> Map k a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Map k a -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Map k a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Map k a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Map k a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) #

(Ord k, Ord v) => Ord (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

compare :: Map k v -> Map k v -> Ordering #

(<) :: Map k v -> Map k v -> Bool #

(<=) :: Map k v -> Map k v -> Bool #

(>) :: Map k v -> Map k v -> Bool #

(>=) :: Map k v -> Map k v -> Bool #

max :: Map k v -> Map k v -> Map k v #

min :: Map k v -> Map k v -> Map k v #

(Ord k, Read k, Read e) => Read (Map k e) 
Instance details

Defined in Data.Map.Internal

Methods

readsPrec :: Int -> ReadS (Map k e) #

readList :: ReadS [Map k e] #

readPrec :: ReadPrec (Map k e) #

readListPrec :: ReadPrec [Map k e] #

(Show k, Show a) => Show (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

showsPrec :: Int -> Map k a -> ShowS #

show :: Map k a -> String #

showList :: [Map k a] -> ShowS #

Ord k => Semigroup (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

(<>) :: Map k v -> Map k v -> Map k v #

sconcat :: NonEmpty (Map k v) -> Map k v #

stimes :: Integral b => b -> Map k v -> Map k v #

Ord k => Monoid (Map k v) 
Instance details

Defined in Data.Map.Internal

Methods

mempty :: Map k v #

mappend :: Map k v -> Map k v -> Map k v #

mconcat :: [Map k v] -> Map k v #

(Hashable k, Hashable v) => Hashable (Map k v)

Since: hashable-1.3.4.0

Instance details

Defined in Data.Hashable.Class

Methods

hashWithSalt :: Int -> Map k v -> Int Source #

hash :: Map k v -> Int Source #

(Ord k, ToCBOR k, ToCBOR v) => ToCBOR (Map k v) 
Instance details

Defined in Cardano.Binary.ToCBOR

Methods

toCBOR :: Map k v -> Encoding Source #

encodedSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy (Map k v) -> Size Source #

encodedListSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy [Map k v] -> Size Source #

(Ord k, FromCBOR k, FromCBOR v) => FromCBOR (Map k v) 
Instance details

Defined in Cardano.Binary.FromCBOR

Methods

fromCBOR :: Decoder s (Map k v) Source #

label :: Proxy (Map k v) -> Text Source #

(NFData k, NFData a) => NFData (Map k a) 
Instance details

Defined in Data.Map.Internal

Methods

rnf :: Map k a -> () #

(NoThunks k, NoThunks v) => NoThunks (Map k v) 
Instance details

Defined in NoThunks.Class

(Eq k, Eq v, Ord k, CannonicalZero v) => CannonicalZero (Map k v) Source # 
Instance details

Defined in Data.CannonicalMaps

Methods

zeroC :: Map k v Source #

joinC :: Map k v -> Map k v -> Map k v Source #

Relation (Map k v) Source # 
Instance details

Defined in Data.Relation

Associated Types

type Domain (Map k v) Source #

type Range (Map k v) Source #

Methods

singleton :: Domain (Map k v) -> Range (Map k v) -> Map k v Source #

dom :: Map k v -> Set (Domain (Map k v)) Source #

range :: Map k v -> Set (Range (Map k v)) Source #

(◁) :: Set (Domain (Map k v)) -> Map k v -> Map k v Source #

(<|) :: Set (Domain (Map k v)) -> Map k v -> Map k v Source #

(⋪) :: Set (Domain (Map k v)) -> Map k v -> Map k v Source #

(</|) :: Set (Domain (Map k v)) -> Map k v -> Map k v Source #

(▷) :: Map k v -> Set (Range (Map k v)) -> Map k v Source #

(|>) :: Map k v -> Set (Range (Map k v)) -> Map k v Source #

(⋫) :: Map k v -> Set (Range (Map k v)) -> Map k v Source #

(|/>) :: Map k v -> Set (Range (Map k v)) -> Map k v Source #

(∪) :: Map k v -> Map k v -> Map k v Source #

(⨃) :: Map k v -> Map k v -> Map k v Source #

size :: Integral n => Map k v -> n Source #

haskey :: Domain (Map k v) -> Map k v -> Bool Source #

addpair :: Domain (Map k v) -> Range (Map k v) -> Map k v -> Map k v Source #

removekey :: Domain (Map k v) -> Map k v -> Map k v Source #

Ord k => HasQuery (Map k v) k v Source # 
Instance details

Defined in Control.Iterate.SetAlgebra

Methods

query :: Map k v -> Query k v Source #

Ord k => HasExp (Map k v) (Map k v) Source # 
Instance details

Defined in Control.Iterate.SetAlgebra

Methods

toExp :: Map k v -> Exp (Map k v) Source #

Embed (Map k v) (Map k v) Source # 
Instance details

Defined in Control.Iterate.SetAlgebra

Methods

toBase :: Map k v -> Map k v Source #

fromBase :: Map k v -> Map k v Source #

type Item (Map k v) 
Instance details

Defined in Data.Map.Internal

type Item (Map k v) = (k, v)
type Domain (Map k v) Source # 
Instance details

Defined in Data.Relation

type Domain (Map k v) = k
type Range (Map k v) Source # 
Instance details

Defined in Data.Relation

type Range (Map k v) = v