Safe Haskell | None |
---|---|
Language | Haskell2010 |
Agda.Utils.Map1
Description
Non-empty maps.
Provides type Map1
of non-empty maps.
Import: @
import Agda.Utils.Map1 (Map1) import qualified Agda.Utils.Map1 as Map1
@
Synopsis
- ifNull :: Map k a -> b -> (Map1 k a -> b) -> b
- unlessNull :: Applicative m => Map k a -> (Map1 k a -> m ()) -> m ()
- unlessNullM :: Monad m => m (Map k a) -> (Map1 k a -> m ()) -> m ()
- type Map1 = NEMap
- (!) :: Ord k => NEMap k a -> k -> a
- (!?) :: Ord k => NEMap k a -> k -> Maybe a
- pattern IsEmpty :: Map k a
- pattern IsNonEmpty :: NEMap k a -> Map k a
- (\\) :: Ord k => NEMap k a -> NEMap k b -> Map k a
- absurdNEMap :: NEMap Void a -> b
- adjust :: Ord k => (a -> a) -> k -> NEMap k a -> NEMap k a
- adjustAt :: (k -> a -> a) -> Int -> NEMap k a -> NEMap k a
- adjustMax :: (a -> a) -> NEMap k a -> NEMap k a
- adjustMaxWithKey :: (k -> a -> a) -> NEMap k a -> NEMap k a
- adjustMin :: (a -> a) -> NEMap k a -> NEMap k a
- adjustMinWithKey :: (k -> a -> a) -> NEMap k a -> NEMap k a
- adjustWithKey :: Ord k => (k -> a -> a) -> k -> NEMap k a -> NEMap k a
- alter :: Ord k => (Maybe a -> Maybe a) -> k -> NEMap k a -> Map k a
- alter' :: Ord k => (Maybe a -> a) -> k -> NEMap k a -> NEMap k a
- alterF :: (Ord k, Functor f) => (Maybe a -> f (Maybe a)) -> k -> NEMap k a -> f (Map k a)
- alterF' :: (Ord k, Functor f) => (Maybe a -> f a) -> k -> NEMap k a -> f (NEMap k a)
- assocs :: NEMap k a -> NonEmpty (k, a)
- delete :: Ord k => k -> NEMap k a -> Map k a
- deleteAt :: Int -> NEMap k a -> Map k a
- deleteFindMax :: NEMap k a -> ((k, a), Map k a)
- deleteFindMin :: NEMap k a -> ((k, a), Map k a)
- deleteMax :: NEMap k a -> Map k a
- deleteMin :: NEMap k a -> Map k a
- difference :: Ord k => NEMap k a -> NEMap k b -> Map k a
- differenceWith :: Ord k => (a -> b -> Maybe a) -> NEMap k a -> NEMap k b -> Map k a
- differenceWithKey :: Ord k => (k -> a -> b -> Maybe a) -> NEMap k a -> NEMap k b -> Map k a
- drop :: Int -> NEMap k a -> Map k a
- dropWhileAntitone :: (k -> Bool) -> NEMap k a -> Map k a
- elemAt :: Int -> NEMap k a -> (k, a)
- filter :: (a -> Bool) -> NEMap k a -> Map k a
- filterWithKey :: (k -> a -> Bool) -> NEMap k a -> Map k a
- findIndex :: Ord k => k -> NEMap k a -> Int
- findMax :: NEMap k a -> (k, a)
- findMin :: NEMap k a -> (k, a)
- findWithDefault :: Ord k => a -> k -> NEMap k a -> a
- foldl1' :: (a -> a -> a) -> NEMap k a -> a
- foldlWithKey :: (a -> k -> b -> a) -> a -> NEMap k b -> a
- foldlWithKey' :: (a -> k -> b -> a) -> a -> NEMap k b -> a
- foldr1' :: (a -> a -> a) -> NEMap k a -> a
- foldrWithKey :: (k -> a -> b -> b) -> b -> NEMap k a -> b
- foldrWithKey' :: (k -> a -> b -> b) -> b -> NEMap k a -> b
- fromAscList :: Eq k => NonEmpty (k, a) -> NEMap k a
- fromAscListWith :: Eq k => (a -> a -> a) -> NonEmpty (k, a) -> NEMap k a
- fromAscListWithKey :: Eq k => (k -> a -> a -> a) -> NonEmpty (k, a) -> NEMap k a
- fromDescList :: Eq k => NonEmpty (k, a) -> NEMap k a
- fromDescListWith :: Eq k => (a -> a -> a) -> NonEmpty (k, a) -> NEMap k a
- fromDescListWithKey :: Eq k => (k -> a -> a -> a) -> NonEmpty (k, a) -> NEMap k a
- fromDistinctAscList :: NonEmpty (k, a) -> NEMap k a
- fromDistinctDescList :: NonEmpty (k, a) -> NEMap k a
- fromListWith :: Ord k => (a -> a -> a) -> NonEmpty (k, a) -> NEMap k a
- fromListWithKey :: Ord k => (k -> a -> a -> a) -> NonEmpty (k, a) -> NEMap k a
- fromSet :: (k -> a) -> NESet k -> NEMap k a
- insert :: Ord k => k -> a -> NEMap k a -> NEMap k a
- insertLookupWithKey :: Ord k => (k -> a -> a -> a) -> k -> a -> NEMap k a -> (Maybe a, NEMap k a)
- insertMap :: Ord k => k -> a -> Map k a -> NEMap k a
- insertMapMax :: k -> a -> Map k a -> NEMap k a
- insertMapMin :: k -> a -> Map k a -> NEMap k a
- insertMapWith :: Ord k => (a -> a -> a) -> k -> a -> Map k a -> NEMap k a
- insertMapWithKey :: Ord k => (k -> a -> a -> a) -> k -> a -> Map k a -> NEMap k a
- insertWithKey :: Ord k => (k -> a -> a -> a) -> k -> a -> NEMap k a -> NEMap k a
- intersection :: Ord k => NEMap k a -> NEMap k b -> Map k a
- intersectionWith :: Ord k => (a -> b -> c) -> NEMap k a -> NEMap k b -> Map k c
- intersectionWithKey :: Ord k => (k -> a -> b -> c) -> NEMap k a -> NEMap k b -> Map k c
- isProperSubmapOf :: (Ord k, Eq a) => NEMap k a -> NEMap k a -> Bool
- isProperSubmapOfBy :: Ord k => (a -> b -> Bool) -> NEMap k a -> NEMap k b -> Bool
- isSubmapOf :: (Ord k, Eq a) => NEMap k a -> NEMap k a -> Bool
- isSubmapOfBy :: Ord k => (a -> b -> Bool) -> NEMap k a -> NEMap k b -> Bool
- keys :: NEMap k a -> NonEmpty k
- keysSet :: NEMap k a -> NESet k
- lookup :: Ord k => k -> NEMap k a -> Maybe a
- lookupGE :: Ord k => k -> NEMap k a -> Maybe (k, a)
- lookupGT :: Ord k => k -> NEMap k a -> Maybe (k, a)
- lookupIndex :: Ord k => k -> NEMap k a -> Maybe Int
- lookupLE :: Ord k => k -> NEMap k a -> Maybe (k, a)
- lookupLT :: Ord k => k -> NEMap k a -> Maybe (k, a)
- mapAccum :: (a -> b -> (a, c)) -> a -> NEMap k b -> (a, NEMap k c)
- mapAccumRWithKey :: (a -> k -> b -> (a, c)) -> a -> NEMap k b -> (a, NEMap k c)
- mapAccumWithKey :: (a -> k -> b -> (a, c)) -> a -> NEMap k b -> (a, NEMap k c)
- mapEither :: (a -> Either b c) -> NEMap k a -> These (NEMap k b) (NEMap k c)
- mapEitherWithKey :: (k -> a -> Either b c) -> NEMap k a -> These (NEMap k b) (NEMap k c)
- mapKeys :: Ord k2 => (k1 -> k2) -> NEMap k1 a -> NEMap k2 a
- mapKeysMonotonic :: (k1 -> k2) -> NEMap k1 a -> NEMap k2 a
- mapKeysWith :: Ord k2 => (a -> a -> a) -> (k1 -> k2) -> NEMap k1 a -> NEMap k2 a
- mapMaybe :: (a -> Maybe b) -> NEMap k a -> Map k b
- mapMaybeWithKey :: (k -> a -> Maybe b) -> NEMap k a -> Map k b
- mapWithKey :: (k -> a -> b) -> NEMap k a -> NEMap k b
- maxView :: NEMap k a -> (a, Map k a)
- member :: Ord k => k -> NEMap k a -> Bool
- minView :: NEMap k a -> (a, Map k a)
- notMember :: Ord k => k -> NEMap k a -> Bool
- partition :: (a -> Bool) -> NEMap k a -> These (NEMap k a) (NEMap k a)
- partitionWithKey :: (k -> a -> Bool) -> NEMap k a -> These (NEMap k a) (NEMap k a)
- restrictKeys :: Ord k => NEMap k a -> Set k -> Map k a
- spanAntitone :: (k -> Bool) -> NEMap k a -> These (NEMap k a) (NEMap k a)
- split :: Ord k => k -> NEMap k a -> Maybe (These (NEMap k a) (NEMap k a))
- splitAt :: Int -> NEMap k a -> These (NEMap k a) (NEMap k a)
- splitLookup :: Ord k => k -> NEMap k a -> These a (These (NEMap k a) (NEMap k a))
- splitRoot :: NEMap k a -> NonEmpty (NEMap k a)
- take :: Int -> NEMap k a -> Map k a
- takeWhileAntitone :: (k -> Bool) -> NEMap k a -> Map k a
- toAscList :: NEMap k a -> NonEmpty (k, a)
- toDescList :: NEMap k a -> NonEmpty (k, a)
- traverseMaybeWithKey :: Applicative t => (k -> a -> t (Maybe b)) -> NEMap k a -> t (Map k b)
- traverseMaybeWithKey1 :: Apply t => (k -> a -> t (Maybe b)) -> NEMap k a -> t (Map k b)
- unionWith :: Ord k => (a -> a -> a) -> NEMap k a -> NEMap k a -> NEMap k a
- unionWithKey :: Ord k => (k -> a -> a -> a) -> NEMap k a -> NEMap k a -> NEMap k a
- unionsWith :: (Foldable1 f, Ord k) => (a -> a -> a) -> f (NEMap k a) -> NEMap k a
- unsafeFromMap :: Map k a -> NEMap k a
- update :: Ord k => (a -> Maybe a) -> k -> NEMap k a -> Map k a
- updateAt :: (k -> a -> Maybe a) -> Int -> NEMap k a -> Map k a
- updateLookupWithKey :: Ord k => (k -> a -> Maybe a) -> k -> NEMap k a -> (Maybe a, Map k a)
- updateMax :: (a -> Maybe a) -> NEMap k a -> Map k a
- updateMaxWithKey :: (k -> a -> Maybe a) -> NEMap k a -> Map k a
- updateMin :: (a -> Maybe a) -> NEMap k a -> Map k a
- updateMinWithKey :: (k -> a -> Maybe a) -> NEMap k a -> Map k a
- updateWithKey :: Ord k => (k -> a -> Maybe a) -> k -> NEMap k a -> Map k a
- withoutKeys :: Ord k => NEMap k a -> Set k -> Map k a
- elems :: NEMap k a -> NonEmpty a
- foldMapWithKey :: Semigroup m => (k -> a -> m) -> NEMap k a -> m
- foldl :: (a -> b -> a) -> a -> NEMap k b -> a
- foldl' :: (a -> b -> a) -> a -> NEMap k b -> a
- foldl1 :: (a -> a -> a) -> NEMap k a -> a
- foldr :: (a -> b -> b) -> b -> NEMap k a -> b
- foldr' :: (a -> b -> b) -> b -> NEMap k a -> b
- foldr1 :: (a -> a -> a) -> NEMap k a -> a
- fromList :: Ord k => NonEmpty (k, a) -> NEMap k a
- insertWith :: Ord k => (a -> a -> a) -> k -> a -> NEMap k a -> NEMap k a
- map :: (a -> b) -> NEMap k a -> NEMap k b
- nonEmptyMap :: Map k a -> Maybe (NEMap k a)
- singleton :: k -> a -> NEMap k a
- size :: NEMap k a -> Int
- toList :: NEMap k a -> NonEmpty (k, a)
- toMap :: NEMap k a -> Map k a
- traverseWithKey :: Applicative t => (k -> a -> t b) -> NEMap k a -> t (NEMap k b)
- traverseWithKey1 :: Apply t => (k -> a -> t b) -> NEMap k a -> t (NEMap k b)
- union :: Ord k => NEMap k a -> NEMap k a -> NEMap k a
- unions :: (Foldable1 f, Ord k) => f (NEMap k a) -> NEMap k a
- valid :: Ord k => NEMap k a -> Bool
- withNonEmpty :: r -> (NEMap k a -> r) -> Map k a -> r
- data NEMap k a
Documentation
unlessNull :: Applicative m => Map k a -> (Map1 k a -> m ()) -> m () Source #
A more general type would be Null m => Map k a -> (Map1 k a -> m) -> m
but this type is problematic as we do not have a general
instance Applicative m => Null (m ())
.
pattern IsNonEmpty :: NEMap k a -> Map k a #
absurdNEMap :: NEMap Void a -> b #
adjustMaxWithKey :: (k -> a -> a) -> NEMap k a -> NEMap k a #
adjustMinWithKey :: (k -> a -> a) -> NEMap k a -> NEMap k a #
adjustWithKey :: Ord k => (k -> a -> a) -> k -> NEMap k a -> NEMap k a #
deleteFindMax :: NEMap k a -> ((k, a), Map k a) #
deleteFindMin :: NEMap k a -> ((k, a), Map k a) #
dropWhileAntitone :: (k -> Bool) -> NEMap k a -> Map k a #
filterWithKey :: (k -> a -> Bool) -> NEMap k a -> Map k a #
findWithDefault :: Ord k => a -> k -> NEMap k a -> a #
foldlWithKey :: (a -> k -> b -> a) -> a -> NEMap k b -> a #
foldlWithKey' :: (a -> k -> b -> a) -> a -> NEMap k b -> a #
foldrWithKey :: (k -> a -> b -> b) -> b -> NEMap k a -> b #
foldrWithKey' :: (k -> a -> b -> b) -> b -> NEMap k a -> b #
fromAscList :: Eq k => NonEmpty (k, a) -> NEMap k a #
fromAscListWith :: Eq k => (a -> a -> a) -> NonEmpty (k, a) -> NEMap k a #
fromAscListWithKey :: Eq k => (k -> a -> a -> a) -> NonEmpty (k, a) -> NEMap k a #
fromDescList :: Eq k => NonEmpty (k, a) -> NEMap k a #
fromDescListWith :: Eq k => (a -> a -> a) -> NonEmpty (k, a) -> NEMap k a #
fromDescListWithKey :: Eq k => (k -> a -> a -> a) -> NonEmpty (k, a) -> NEMap k a #
fromDistinctAscList :: NonEmpty (k, a) -> NEMap k a #
fromDistinctDescList :: NonEmpty (k, a) -> NEMap k a #
fromListWith :: Ord k => (a -> a -> a) -> NonEmpty (k, a) -> NEMap k a #
fromListWithKey :: Ord k => (k -> a -> a -> a) -> NonEmpty (k, a) -> NEMap k a #
insertMapMax :: k -> a -> Map k a -> NEMap k a #
insertMapMin :: k -> a -> Map k a -> NEMap k a #
insertMapWith :: Ord k => (a -> a -> a) -> k -> a -> Map k a -> NEMap k a #
insertMapWithKey :: Ord k => (k -> a -> a -> a) -> k -> a -> Map k a -> NEMap k a #
insertWithKey :: Ord k => (k -> a -> a -> a) -> k -> a -> NEMap k a -> NEMap k a #
mapAccumRWithKey :: (a -> k -> b -> (a, c)) -> a -> NEMap k b -> (a, NEMap k c) #
mapAccumWithKey :: (a -> k -> b -> (a, c)) -> a -> NEMap k b -> (a, NEMap k c) #
mapKeysMonotonic :: (k1 -> k2) -> NEMap k1 a -> NEMap k2 a #
mapKeysWith :: Ord k2 => (a -> a -> a) -> (k1 -> k2) -> NEMap k1 a -> NEMap k2 a #
mapMaybeWithKey :: (k -> a -> Maybe b) -> NEMap k a -> Map k b #
mapWithKey :: (k -> a -> b) -> NEMap k a -> NEMap k b #
takeWhileAntitone :: (k -> Bool) -> NEMap k a -> Map k a #
toDescList :: NEMap k a -> NonEmpty (k, a) #
traverseMaybeWithKey :: Applicative t => (k -> a -> t (Maybe b)) -> NEMap k a -> t (Map k b) #
traverseMaybeWithKey1 :: Apply t => (k -> a -> t (Maybe b)) -> NEMap k a -> t (Map k b) #
unsafeFromMap :: Map k a -> NEMap k a #
updateMaxWithKey :: (k -> a -> Maybe a) -> NEMap k a -> Map k a #
updateMinWithKey :: (k -> a -> Maybe a) -> NEMap k a -> Map k a #
foldMapWithKey :: Semigroup m => (k -> a -> m) -> NEMap k a -> m #
insertWith :: Ord k => (a -> a -> a) -> k -> a -> NEMap k a -> NEMap k a #
nonEmptyMap :: Map k a -> Maybe (NEMap k a) #
traverseWithKey :: Applicative t => (k -> a -> t b) -> NEMap k a -> t (NEMap k b) #
traverseWithKey1 :: Apply t => (k -> a -> t b) -> NEMap k a -> t (NEMap k b) #
withNonEmpty :: r -> (NEMap k a -> r) -> Map k a -> r #
Instances
Eq2 NEMap # | |
Ord2 NEMap # | |
Defined in Data.Map.NonEmpty.Internal | |
Show2 NEMap # | |
Foldable1 (NEMap k) # | |
Defined in Data.Map.NonEmpty.Internal Methods fold1 :: Semigroup m => NEMap k m -> m # foldMap1 :: Semigroup m => (a -> m) -> NEMap k a -> m # foldMap1' :: Semigroup m => (a -> m) -> NEMap k a -> m # toNonEmpty :: NEMap k a -> NonEmpty a # maximum :: Ord a => NEMap k a -> a # minimum :: Ord a => NEMap k a -> a # foldrMap1 :: (a -> b) -> (a -> b -> b) -> NEMap k a -> b # foldlMap1' :: (a -> b) -> (b -> a -> b) -> NEMap k a -> b # foldlMap1 :: (a -> b) -> (b -> a -> b) -> NEMap k a -> b # foldrMap1' :: (a -> b) -> (a -> b -> b) -> NEMap k a -> b # | |
Eq k => Eq1 (NEMap k) # | |
Ord k => Ord1 (NEMap k) # | |
Defined in Data.Map.NonEmpty.Internal | |
(Ord k, Read k) => Read1 (NEMap k) # | |
Defined in Data.Map.NonEmpty.Internal | |
Show k => Show1 (NEMap k) # | |
Comonad (NEMap k) # | |
Functor (NEMap k) # | |
Foldable (NEMap k) # | |
Defined in Data.Map.NonEmpty.Internal Methods fold :: Monoid m => NEMap k m -> m # foldMap :: Monoid m => (a -> m) -> NEMap k a -> m # foldMap' :: Monoid m => (a -> m) -> NEMap k a -> m # foldr :: (a -> b -> b) -> b -> NEMap k a -> b # foldr' :: (a -> b -> b) -> b -> NEMap k a -> b # foldl :: (b -> a -> b) -> b -> NEMap k a -> b # foldl' :: (b -> a -> b) -> b -> NEMap k a -> b # foldr1 :: (a -> a -> a) -> NEMap k a -> a # foldl1 :: (a -> a -> a) -> NEMap k a -> a # elem :: Eq a => a -> NEMap k a -> Bool # maximum :: Ord a => NEMap k a -> a # minimum :: Ord a => NEMap k a -> a # | |
Traversable (NEMap k) # | |
Invariant (NEMap k) # | |
Defined in Data.Map.NonEmpty.Internal | |
Ord k => Alt (NEMap k) # | |
Defined in Data.Map.NonEmpty.Internal | |
Traversable1 (NEMap k) # | |
(NFData k, NFData a) => NFData (NEMap k a) # | |
Defined in Data.Map.NonEmpty.Internal | |
Ord k => Semigroup (NEMap k a) # | |
(Data k, Data a, Ord k) => Data (NEMap k a) # | |
Defined in Data.Map.NonEmpty.Internal Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NEMap k a -> c (NEMap k a) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (NEMap k a) # toConstr :: NEMap k a -> Constr # dataTypeOf :: NEMap k a -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (NEMap k a)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (NEMap k a)) # gmapT :: (forall b. Data b => b -> b) -> NEMap k a -> NEMap k a # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NEMap k a -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NEMap k a -> r # gmapQ :: (forall d. Data d => d -> u) -> NEMap k a -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> NEMap k a -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> NEMap k a -> m (NEMap k a) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NEMap k a -> m (NEMap k a) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NEMap k a -> m (NEMap k a) # | |
(Ord k, Read k, Read e) => Read (NEMap k e) # | |
(Show k, Show a) => Show (NEMap k a) # | |
(Eq k, Eq a) => Eq (NEMap k a) # | |
(Ord k, Ord a) => Ord (NEMap k a) # | |
(FromJSONKey k, Ord k, FromJSON a) => FromJSON (NEMap k a) # | |
Defined in Data.Map.NonEmpty.Internal | |
(ToJSONKey k, ToJSON a) => ToJSON (NEMap k a) # | |