License | BSD-style (see the LICENSE file in the distribution) |
---|---|
Maintainer | libraries@haskell.org |
Stability | experimental |
Portability | portable |
Safe Haskell | Trustworthy |
Language | Haskell2010 |
Data.Proxy
Description
Definition of a Proxy type (poly-kinded in GHC)
Since: 4.7.0.0
Documentation
A concrete, poly-kinded proxy type
Constructors
Instances
Methods
fold :: Monoid m => Proxy * m -> m Source #
foldMap :: Monoid m => (a -> m) -> Proxy * a -> m Source #
foldr :: (a -> b -> b) -> b -> Proxy * a -> b Source #
foldr' :: (a -> b -> b) -> b -> Proxy * a -> b Source #
foldl :: (b -> a -> b) -> b -> Proxy * a -> b Source #
foldl' :: (b -> a -> b) -> b -> Proxy * a -> b Source #
foldr1 :: (a -> a -> a) -> Proxy * a -> a Source #
foldl1 :: (a -> a -> a) -> Proxy * a -> a Source #
toList :: Proxy * a -> [a] Source #
null :: Proxy * a -> Bool Source #
length :: Proxy * a -> Int Source #
elem :: Eq a => a -> Proxy * a -> Bool Source #
maximum :: Ord a => Proxy * a -> a Source #
minimum :: Ord a => Proxy * a -> a Source #
Methods
liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Proxy * a) Source #
liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Proxy * a] Source #
liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Proxy * a) Source #
liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Proxy * a] Source #
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 #
Methods
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Proxy * t -> c (Proxy * t) Source #
gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Proxy * t) Source #
toConstr :: Proxy * t -> Constr Source #
dataTypeOf :: Proxy * t -> DataType Source #
dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c (Proxy * t)) Source #
dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Proxy * t)) Source #
gmapT :: (forall b. Data b => b -> b) -> Proxy * t -> Proxy * t Source #
gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Proxy * t -> r Source #
gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Proxy * t -> r Source #
gmapQ :: (forall d. Data d => d -> u) -> Proxy * t -> [u] Source #
gmapQi :: Int -> (forall d. Data d => d -> u) -> Proxy * t -> u Source #
gmapM :: Monad m => (forall d. Data d => d -> m d) -> Proxy * t -> m (Proxy * t) Source #
gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Proxy * t -> m (Proxy * t) Source #
gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Proxy * t -> m (Proxy * t) Source #
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
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.