Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Cooked.Skeleton.Label
Description
This module exposes the labels that can be used to stamp
TxSkel
with additional arbitrary pieces of information.
Synopsis
- type LabelConstrs x = (PrettyCooked x, Show x, Typeable x, Eq x, Ord x)
- data TxSkelLabel where
- TxSkelLabel :: LabelConstrs x => x -> TxSkelLabel
- txSkelLabelTypedP :: LabelConstrs a => Prism' TxSkelLabel a
Documentation
type LabelConstrs x = (PrettyCooked x, Show x, Typeable x, Eq x, Ord x) Source #
These are type constraints that must be satisfied by labels
data TxSkelLabel where Source #
Labels are arbitrary information that can be added to skeleton. They are meant to be pretty-printed. The common use case we currently have is to tag skeletons that have been modified by tweaks and automated attacks.
Constructors
TxSkelLabel :: LabelConstrs x => x -> TxSkelLabel |
Instances
Show TxSkelLabel Source # | |
Defined in Cooked.Skeleton.Label Methods showsPrec :: Int -> TxSkelLabel -> ShowS # show :: TxSkelLabel -> String # showList :: [TxSkelLabel] -> ShowS # | |
PrettyCooked TxSkelLabel Source # | |
Defined in Cooked.Skeleton.Label Methods prettyCookedOpt :: PrettyCookedOpts -> TxSkelLabel -> DocCooked Source # prettyCooked :: TxSkelLabel -> DocCooked Source # | |
Eq TxSkelLabel Source # | |
Defined in Cooked.Skeleton.Label | |
Ord TxSkelLabel Source # | |
Defined in Cooked.Skeleton.Label Methods compare :: TxSkelLabel -> TxSkelLabel -> Ordering # (<) :: TxSkelLabel -> TxSkelLabel -> Bool # (<=) :: TxSkelLabel -> TxSkelLabel -> Bool # (>) :: TxSkelLabel -> TxSkelLabel -> Bool # (>=) :: TxSkelLabel -> TxSkelLabel -> Bool # max :: TxSkelLabel -> TxSkelLabel -> TxSkelLabel # min :: TxSkelLabel -> TxSkelLabel -> TxSkelLabel # |
txSkelLabelTypedP :: LabelConstrs a => Prism' TxSkelLabel a Source #
A prism to create a label and retrieve a typed content