proxy-0.1.0.0: proxy helpers

Safe HaskellSafe
LanguageHaskell2010

Proxy

Description

This module contains a bunch of pre-defined proxies so that users don't always have to write (Proxy :: Proxy Word8), etc.

This library uses the naming convention of 1, 2, 3, etc. as suffixes to denote higher-kindedness of the proxied type.

For example:

      const :: Proxy (Const a b)
      -- ^ Const a b is kinded *, so there is no number
      --   appended to the name of the type.
      const1 :: Proxy (Const a)
      -- ^ Const a is kinded * '->' *, so there is the
      --   number 1 appended to the name of the type.
      const2 :: Proxy Const
      -- ^ Const is kinded * '->' *, so there is the 
      --   number 2 appended to the name of the type.
    

It is recommended that you import this module qualified to avoid naming conflicts.

Documentation

refl :: Proxy (a :~: b) Source #

tuple :: Proxy (a, b) Source #