base-4.9.0.0: Basic libraries

LicenseBSD-style (see the LICENSE file in the distribution)
Maintainerlibraries@haskell.org
Stabilityexperimental
Portabilityportable
Safe HaskellTrustworthy
LanguageHaskell2010

Data.Proxy

Description

Definition of a Proxy type (poly-kinded in GHC)

Since: 4.7.0.0

Synopsis

Documentation

data Proxy t Source

A concrete, poly-kinded proxy type

Constructors

Proxy 

Instances

Monad (Proxy (TYPE Lifted)) 
Functor (Proxy (TYPE Lifted)) 

Methods

fmap :: (a -> b) -> Proxy (TYPE Lifted) a -> Proxy (TYPE Lifted) b Source

(<$) :: a -> Proxy (TYPE Lifted) b -> Proxy (TYPE Lifted) a Source

Applicative (Proxy (TYPE Lifted)) 
Foldable (Proxy (TYPE Lifted)) 

Methods

fold :: Monoid m => Proxy (TYPE Lifted) m -> m Source

foldMap :: Monoid m => (a -> m) -> Proxy (TYPE Lifted) a -> m Source

foldr :: (a -> b -> b) -> b -> Proxy (TYPE Lifted) a -> b Source

foldr' :: (a -> b -> b) -> b -> Proxy (TYPE Lifted) a -> b Source

foldl :: (b -> a -> b) -> b -> Proxy (TYPE Lifted) a -> b Source

foldl' :: (b -> a -> b) -> b -> Proxy (TYPE Lifted) a -> b Source

foldr1 :: (a -> a -> a) -> Proxy (TYPE Lifted) a -> a Source

foldl1 :: (a -> a -> a) -> Proxy (TYPE Lifted) a -> a Source

toList :: Proxy (TYPE Lifted) a -> [a] Source

null :: Proxy (TYPE Lifted) a -> Bool Source

length :: Proxy (TYPE Lifted) a -> Int Source

elem :: Eq a => a -> Proxy (TYPE Lifted) a -> Bool Source

maximum :: Ord a => Proxy (TYPE Lifted) a -> a Source

minimum :: Ord a => Proxy (TYPE Lifted) a -> a Source

sum :: Num a => Proxy (TYPE Lifted) a -> a Source

product :: Num a => Proxy (TYPE Lifted) a -> a Source

Traversable (Proxy (TYPE Lifted)) 

Methods

traverse :: Applicative f => (a -> f b) -> Proxy (TYPE Lifted) a -> f (Proxy (TYPE Lifted) b) Source

sequenceA :: Applicative f => Proxy (TYPE Lifted) (f a) -> f (Proxy (TYPE Lifted) a) Source

mapM :: Monad m => (a -> m b) -> Proxy (TYPE Lifted) a -> m (Proxy (TYPE Lifted) b) Source

sequence :: Monad m => Proxy (TYPE Lifted) (m a) -> m (Proxy (TYPE Lifted) a) Source

Generic1 (Proxy *) 

Associated Types

type Rep1 (Proxy * :: * -> TYPE Lifted) :: * -> * Source

Methods

from1 :: Proxy * a -> Rep1 (Proxy *) a Source

to1 :: Rep1 (Proxy *) a -> Proxy * a Source

Bounded (Proxy k s) 
Enum (Proxy k s) 

Methods

succ :: Proxy k s -> Proxy k s Source

pred :: Proxy k s -> Proxy k s Source

toEnum :: Int -> Proxy k s Source

fromEnum :: Proxy k s -> Int Source

enumFrom :: Proxy k s -> [Proxy k s] Source

enumFromThen :: Proxy k s -> Proxy k s -> [Proxy k s] Source

enumFromTo :: Proxy k s -> Proxy k s -> [Proxy k s] Source

enumFromThenTo :: Proxy k s -> Proxy k s -> Proxy k s -> [Proxy k s] Source

Eq (Proxy k s) 

Methods

(==) :: Proxy k s -> Proxy k s -> Bool Source

(/=) :: Proxy k s -> Proxy k s -> Bool Source

Data t => Data (Proxy (TYPE Lifted) t) 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Proxy (TYPE Lifted) t -> c (Proxy (TYPE Lifted) t) Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Proxy (TYPE Lifted) t) Source

toConstr :: Proxy (TYPE Lifted) t -> Constr Source

dataTypeOf :: Proxy (TYPE Lifted) t -> DataType Source

dataCast1 :: Typeable (TYPE Lifted -> TYPE Lifted) t => (forall d. Data d => c (t d)) -> Maybe (c (Proxy (TYPE Lifted) t)) Source

dataCast2 :: Typeable (TYPE Lifted -> TYPE Lifted -> TYPE Lifted) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Proxy (TYPE Lifted) t)) Source

gmapT :: (forall b. Data b => b -> b) -> Proxy (TYPE Lifted) t -> Proxy (TYPE Lifted) t Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Proxy (TYPE Lifted) t -> r Source

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Proxy (TYPE Lifted) t -> r Source

gmapQ :: (forall d. Data d => d -> u) -> Proxy (TYPE Lifted) t -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> Proxy (TYPE Lifted) t -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Proxy (TYPE Lifted) t -> m (Proxy (TYPE Lifted) t) Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Proxy (TYPE Lifted) t -> m (Proxy (TYPE Lifted) t) Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Proxy (TYPE Lifted) t -> m (Proxy (TYPE Lifted) t) Source

Ord (Proxy k s) 

Methods

compare :: Proxy k s -> Proxy k s -> Ordering Source

(<) :: Proxy k s -> Proxy k s -> Bool Source

(<=) :: Proxy k s -> Proxy k s -> Bool Source

(>) :: Proxy k s -> Proxy k s -> Bool Source

(>=) :: Proxy k s -> Proxy k s -> Bool Source

max :: Proxy k s -> Proxy k s -> Proxy k s Source

min :: Proxy k s -> Proxy k s -> Proxy k s Source

Read (Proxy k s) 
Show (Proxy k s) 

Methods

showsPrec :: Int -> Proxy k s -> ShowS Source

show :: Proxy k s -> String Source

showList :: [Proxy k s] -> ShowS Source

Ix (Proxy k s) 

Methods

range :: (Proxy k s, Proxy k s) -> [Proxy k s] Source

index :: (Proxy k s, Proxy k s) -> Proxy k s -> Int Source

unsafeIndex :: (Proxy k s, Proxy k s) -> Proxy k s -> Int

inRange :: (Proxy k s, Proxy k s) -> Proxy k s -> Bool Source

rangeSize :: (Proxy k s, Proxy k s) -> Int Source

unsafeRangeSize :: (Proxy k s, Proxy k s) -> Int

Generic (Proxy k t) 

Associated Types

type Rep (Proxy k t) :: * -> * Source

Methods

from :: Proxy k t -> Rep (Proxy k t) x Source

to :: Rep (Proxy k t) x -> Proxy k t Source

Semigroup (Proxy k s) 

Methods

(<>) :: Proxy k s -> Proxy k s -> Proxy k s Source

sconcat :: NonEmpty (Proxy k s) -> Proxy k s Source

stimes :: Integral b => b -> Proxy k s -> Proxy k s Source

Monoid (Proxy k s) 

Methods

mempty :: Proxy k s Source

mappend :: Proxy k s -> Proxy k s -> Proxy k s Source

mconcat :: [Proxy k s] -> Proxy k s Source

type Rep1 (Proxy k) = D1 (MetaData "Proxy" "Data.Proxy" "base" False) (C1 (MetaCons "Proxy" PrefixI False) U1) 
type Rep (Proxy k t) = D1 (MetaData "Proxy" "Data.Proxy" "base" False) (C1 (MetaCons "Proxy" PrefixI False) U1) 

asProxyTypeOf :: a -> Proxy a -> a Source

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