tagged-0.8.4: Haskell 98 phantom types to avoid unsafely passing dummy arguments

Portabilityportable
Stabilityexperimental
MaintainerEdward Kmett <ekmett@gmail.com>
Safe HaskellTrustworthy

Data.Proxy

Contents

Description

 

Synopsis

Proxy values

data Proxy s Source

Constructors

Proxy 

Instances

Monad (Proxy *) 
Functor (Proxy *) 
Typeable1 (Proxy *) 
MonadPlus (Proxy *) 
Applicative (Proxy *) 
Foldable (Proxy *) 
Traversable (Proxy *) 
Generic1 (Proxy *) 
Alternative (Proxy *) 
MonadZip (Proxy *) 
Bounded (Proxy k s) 
Enum (Proxy k s) 
Eq (Proxy k s) 
Data s => Data (Proxy * s) 
Ord (Proxy k s) 
Read (Proxy k s) 
Show (Proxy k s) 
Ix (Proxy k s) 
Generic (Proxy k s) 
Monoid (Proxy k s) 
NFData (Proxy k s) 

asProxyTypeOf :: a -> proxy a -> aSource

asProxyTypeOf is a type-restricted version of const. It is usually used as an infix operator, and its typing forces its first argument (which is usually overloaded) to have the same type as the tag of the second.

data KProxy t Source

A concrete, promotable proxy type, for use at the kind level There are no instances for this because it is intended at the kind level only

Constructors

KProxy 

Instances

Typeable1 KProxy