Safe Haskell | None |
---|---|
Language | Haskell2010 |
Data.TagLabel
Synopsis
- class Generic a where
- data ((f :: k -> Type) :+: (g :: k -> Type)) (p :: k) :: forall k. (k -> Type) -> (k -> Type) -> k -> Type
- class Ord label => TagLabel label where
- data SpelledAs (s :: Symbol) = SymbolProxy
- fromLabelText :: TagLabel label => Text -> Maybe label
- toLabelText :: TagLabel label => label -> Text
Documentation
Representable types of kind *
.
This class is derivable in GHC with the DeriveGeneric
flag on.
A Generic
instance must satisfy the following laws:
from
.to
≡id
to
.from
≡id
Methods
Convert from the datatype to its representation
Convert from the representation to the datatype
Instances
data ((f :: k -> Type) :+: (g :: k -> Type)) (p :: k) :: forall k. (k -> Type) -> (k -> Type) -> k -> Type infixr 5 #
Sums: encode choice between constructors
Instances
(GPlated a f, GPlated a g) => GPlated a (f :+: g :: k -> Type) | |
Defined in Control.Lens.Plated Methods gplate' :: Traversal' ((f :+: g) p) a | |
(GPlated1 f g, GPlated1 f h) => GPlated1 (f :: k -> Type) (g :+: h :: k -> Type) | recursive match |
Defined in Control.Lens.Plated Methods gplate1' :: Traversal' ((g :+: h) a) (f a) | |
Generic1 (f :+: g :: k -> Type) | |
(GNFData arity a, GNFData arity b) => GNFData arity (a :+: b) | |
Defined in Control.DeepSeq | |
(GSum arity a, GSum arity b) => GSum arity (a :+: b) | |
(FunctorWithIndex i f, FunctorWithIndex j g) => FunctorWithIndex (Either i j) (f :+: g) | |
(FoldableWithIndex i f, FoldableWithIndex j g) => FoldableWithIndex (Either i j) (f :+: g) | |
Defined in Control.Lens.Indexed Methods ifoldMap :: Monoid m => (Either i j -> a -> m) -> (f :+: g) a -> m # ifolded :: IndexedFold (Either i j) ((f :+: g) a) a # ifoldr :: (Either i j -> a -> b -> b) -> b -> (f :+: g) a -> b # ifoldl :: (Either i j -> b -> a -> b) -> b -> (f :+: g) a -> b # ifoldr' :: (Either i j -> a -> b -> b) -> b -> (f :+: g) a -> b # ifoldl' :: (Either i j -> b -> a -> b) -> b -> (f :+: g) a -> b # | |
(TraversableWithIndex i f, TraversableWithIndex j g) => TraversableWithIndex (Either i j) (f :+: g) | |
Defined in Control.Lens.Indexed Methods itraverse :: Applicative f0 => (Either i j -> a -> f0 b) -> (f :+: g) a -> f0 ((f :+: g) b) # itraversed :: IndexedTraversal (Either i j) ((f :+: g) a) ((f :+: g) b) a b # | |
(Functor f, Functor g) => Functor (f :+: g) | Since: base-4.9.0.0 |
(Foldable f, Foldable g) => Foldable (f :+: g) | Since: base-4.9.0.0 |
Defined in Data.Foldable Methods fold :: Monoid m => (f :+: g) m -> m # foldMap :: Monoid m => (a -> m) -> (f :+: g) a -> m # foldr :: (a -> b -> b) -> b -> (f :+: g) a -> b # foldr' :: (a -> b -> b) -> b -> (f :+: g) a -> b # foldl :: (b -> a -> b) -> b -> (f :+: g) a -> b # foldl' :: (b -> a -> b) -> b -> (f :+: g) a -> b # foldr1 :: (a -> a -> a) -> (f :+: g) a -> a # foldl1 :: (a -> a -> a) -> (f :+: g) a -> a # toList :: (f :+: g) a -> [a] # length :: (f :+: g) a -> Int # elem :: Eq a => a -> (f :+: g) a -> Bool # maximum :: Ord a => (f :+: g) a -> a # minimum :: Ord a => (f :+: g) a -> a # | |
(Traversable f, Traversable g) => Traversable (f :+: g) | Since: base-4.9.0.0 |
Defined in Data.Traversable | |
(Contravariant f, Contravariant g) => Contravariant (f :+: g) | |
(Traversable1 f, Traversable1 g) => Traversable1 (f :+: g) | |
(SumSize a, SumSize b) => SumSize (a :+: b) | |
Defined in Data.Hashable.Generic | |
(GSumGet a, GSumGet b) => GSumGet (a :+: b) | |
(SumSize a, SumSize b) => SumSize (a :+: b) | |
Defined in Data.Binary.Generic | |
(GSumPut a, GSumPut b) => GSumPut (a :+: b) | |
(Eq (f p), Eq (g p)) => Eq ((f :+: g) p) | Since: base-4.7.0.0 |
(Ord (f p), Ord (g p)) => Ord ((f :+: g) p) | Since: base-4.7.0.0 |
Defined in GHC.Generics | |
(Read (f p), Read (g p)) => Read ((f :+: g) p) | Since: base-4.7.0.0 |
(Show (f p), Show (g p)) => Show ((f :+: g) p) | Since: base-4.7.0.0 |
Generic ((f :+: g) p) | |
type Rep1 (f :+: g :: k -> Type) | Since: base-4.9.0.0 |
Defined in GHC.Generics type Rep1 (f :+: g :: k -> Type) = D1 (MetaData ":+:" "GHC.Generics" "base" False) (C1 (MetaCons "L1" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec1 f)) :+: C1 (MetaCons "R1" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec1 g))) | |
type Rep ((f :+: g) p) | Since: base-4.7.0.0 |
Defined in GHC.Generics type Rep ((f :+: g) p) = D1 (MetaData ":+:" "GHC.Generics" "base" False) (C1 (MetaCons "L1" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (f p))) :+: C1 (MetaCons "R1" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (g p)))) |
class Ord label => TagLabel label where Source #
Minimal complete definition
Nothing
Methods
labelMap :: Map Text label Source #
labelMap :: (Generic label, GLabel (Rep label)) => Map Text label Source #
reverseLabelMap :: Map label Text Source #
Instances
TagLabel NER Source # | |
TagLabel POS Source # | |
TagLabel REL Source # | |
KnownSymbol symbol => TagLabel (SpelledAs symbol) Source # | The label of a `SpelledAs x` is x, where x is a type level literal string (a Symbol). |
(TagLabel l1, TagLabel l2) => TagLabel (Either l1 l2) Source # | The labels of a sum type, is the cartesian sum of its labels |
data SpelledAs (s :: Symbol) Source #
Constructors
SymbolProxy |
Instances
Eq (SpelledAs s) Source # | |
Ord (SpelledAs s) Source # | |
Defined in Data.TagLabel | |
Read (SpelledAs s) Source # | |
Show (SpelledAs s) Source # | |
Generic (SpelledAs s) Source # | |
KnownSymbol symbol => TagLabel (SpelledAs symbol) Source # | The label of a `SpelledAs x` is x, where x is a type level literal string (a Symbol). |
type Rep (SpelledAs s) Source # | |
toLabelText :: TagLabel label => label -> Text Source #