Hoogle Search

Within LTS Haskell 24.65 (ghc-9.10.3)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. minusMaybe :: (Ord k, MonoidNull v, Reductive v) => MonoidMap k v -> MonoidMap k v -> Maybe (MonoidMap k v)

    monoidmap-internal Data.MonoidMap.Internal

    Performs reductive subtraction of the second map from the first. Uses the Reductive subtraction operator (</>) to subtract each value in the second map from its matching value in the first map. This function produces a result if (and only if) for all possible keys k, it is possible to subtract the value for k in the second map from the value for k in the first map:

    isJust (m1 `minusMaybe` m2)
    == (∀ k. isJust (get k m1 </> get k m2))
    
    Otherwise, this function returns Nothing. This function satisfies the following property:
    all
    (\r -> Just (get k r) == get k m1 </> get k m2)
    (m1 `minusMaybe` m2)
    
    This function provides the definition of (</>) for the MonoidMap instance of Reductive.

    Examples

    With Set Natural values, this function performs set subtraction of matching values, succeeding if (and only if) each value from the second map is a subset of its matching value from the first map:
    f xs = fromList (fromList <$> xs)
    
    >>> m1 = f [("a", [0,1,2]), ("b", [0,1,2])]
    >>> m2 = f [("a", [     ]), ("b", [0,1,2])]
    >>> m3 = f [("a", [0,1,2]), ("b", [     ])]
    
    >>> m1 `minusMaybe` m2 == Just m3
    True
    
    >>> m1 = f [("a", [0,1,2]), ("b", [0,1,2]), ("c", [0,1,2])]
    >>> m2 = f [("a", [0    ]), ("b", [  1  ]), ("c", [    2])]
    >>> m3 = f [("a", [  1,2]), ("b", [0,  2]), ("c", [0,1  ])]
    
    >>> m1 `minusMaybe` m2 == Just m3
    True
    
    >>> m1 = f [("a", [0,1,2    ]), ("b", [0,1,2    ]), ("c", [0,1,2    ])]
    >>> m2 = f [("a", [    2,3,4]), ("b", [  1,2,3,4]), ("c", [0,1,2,3,4])]
    
    >>> m1 `minusMaybe` m2 == Nothing
    True
    
    With Sum Natural values, this function performs ordinary subtraction of matching values, succeeding if (and only if) each value from the second map is less than or equal to its matching value from the first map:
    >>> m1 = fromList [("a", 2), ("b", 3), ("c", 5), ("d", 8)]
    >>> m2 = fromList [("a", 0), ("b", 0), ("c", 0), ("d", 0)]
    >>> m3 = fromList [("a", 2), ("b", 3), ("c", 5), ("d", 8)]
    
    >>> m1 `minusMaybe` m2 == Just m3
    True
    
    >>> m1 = fromList [("a", 2), ("b", 3), ("c", 5), ("d", 8)]
    >>> m2 = fromList [("a", 1), ("b", 2), ("c", 3), ("d", 5)]
    >>> m3 = fromList [("a", 1), ("b", 1), ("c", 2), ("d", 3)]
    
    >>> m1 `minusMaybe` m2 == Just m3
    True
    
    >>> m1 = fromList [("a", 2), ("b", 3), ("c", 5), ("d", 8)]
    >>> m2 = fromList [("a", 2), ("b", 3), ("c", 5), ("d", 8)]
    >>> m3 = fromList [("a", 0), ("b", 0), ("c", 0), ("d", 0)]
    
    >>> m1 `minusMaybe` m2 == Just m3
    True
    
    >>> m1 = fromList [("a", 2), ("b", 3), ("c", 5), ("d", 8)]
    >>> m2 = fromList [("a", 3), ("b", 3), ("c", 5), ("d", 8)]
    
    >>> m1 `minusMaybe` m2 == Nothing
    True
    

  2. mapMaybe :: (Key -> Maybe Key) -> IntMultiSet -> IntMultiSet

    multiset Data.IntMultiSet

    O(n). Map and collect the Just results.

  3. mapMaybe :: Ord b => (a -> Maybe b) -> MultiSet a -> MultiSet b

    multiset Data.MultiSet

    O(n). Map and collect the Just results.

  4. optionMaybe :: forall s (m :: Type -> Type) t u a . Stream s m t => ParsecT s u m a -> ParsecT s u m (Maybe a)

    parsec-class Text.Parsec.Class

    optionMaybe p tries to apply parser p. If p fails without consuming input, it return Nothing, otherwise it returns Just the value returned by p.

  5. fromMaybeOrd :: Maybe Ordering -> PartialOrdering

    partialord Data.PartialOrd

    Convert an ordering into a partial ordering

  6. toMaybeOrd :: PartialOrdering -> Maybe Ordering

    partialord Data.PartialOrd

    Convert a partial ordering to an ordering

  7. readMaybe_ :: Read a => String -> Maybe a

    pontarius-xmpp Network.Xmpp.Internal

    No documentation available.

  8. prefixMaybe :: (a -> TextBuilder) -> Maybe a -> TextBuilder

    postgresql-syntax PostgresqlSyntax.Rendering

    No documentation available.

  9. suffixMaybe :: (a -> TextBuilder) -> Maybe a -> TextBuilder

    postgresql-syntax PostgresqlSyntax.Rendering

    No documentation available.

  10. toMaybeList :: By6Bits e -> [Maybe e]

    primitive-extras PrimitiveExtras.By6Bits

    Convert into a list representation.

Page 252 of many | Previous | Next