monoidmap-internal
Copyright© 2022–2026 Jonathan Knowles
LicenseApache-2.0
Safe HaskellNone
LanguageHaskell2010

Data.MonoidMap.Internal.NonNull

Description

Provides the NonNull type and related functions.

This module is intended to be imported qualified:

import Data.MonoidMap.Internal.NonNull (NonNull)
import Data.MonoidMap.Internal.NonNull qualified as NonNull
Synopsis

Type

data NonNull v Source #

A value that is not null.

Instances

Instances details
NFData v => NFData (NonNull v) Source # 
Instance details

Defined in Data.MonoidMap.Internal.NonNull.Unsafe

Methods

rnf :: NonNull v -> () #

Construction

nonNull :: MonoidNull v => v -> Maybe (NonNull v) Source #

Converts a value into a NonNull value, returning Nothing if the value is null.

Deconstruction

unwrap :: NonNull v -> v Source #

Extracts the value from a NonNull value.

Function application

apply :: (v -> a) -> NonNull v -> a Source #

Applies a function on ordinary values to a NonNull value.

apply2 :: (v1 -> v2 -> a) -> NonNull v1 -> NonNull v2 -> a Source #

Applies a binary function on ordinary values to two NonNull values.