pure-borrow
Safe HaskellNone
LanguageGHC2021

Control.Monad.Borrow.Pure.Lifetime

Synopsis

Documentation

type (/\) = '(:/\) infixr 3 Source #

The meet of the two lifetimes. It is the longest lifetime that is shorter than both of them.

class (α :: Lifetime) <= (β :: Lifetime) infix 2 Source #

Minimal complete definition

witness

Instances

Instances details
α <= Static Source # 
Instance details

Defined in Control.Monad.Borrow.Pure.Lifetime.Internal

Methods

witness :: Witness α Static

α <=! β => α <= β Source # 
Instance details

Defined in Control.Monad.Borrow.Pure.Lifetime.Internal

Methods

witness :: Witness α β

(α <= β, α <= γ) => α <=/\ γ) Source # 
Instance details

Defined in Control.Monad.Borrow.Pure.Lifetime.Internal

Methods

witness :: Witness α (β /\ γ)

type (>=) (α :: Lifetime) (β :: Lifetime) = β <= α Source #

Flipped version of <=.

type Static = 'Static Source #

Static lifetime, which lives forever and neverEnds.

data Lifetime Source #

The kind (type) of lifetimes.