byron-spec-ledger-0.1.0.0: Executable specification of Cardano ledger
Safe HaskellNone
LanguageHaskell2010

Byron.Spec.Ledger.Delegation

Synopsis

Delegation scheduling

data SDELEG Source #

Delegation scheduling rules

Instances

Instances details
Data SDELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SDELEG -> c SDELEG #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SDELEG #

toConstr :: SDELEG -> Constr #

dataTypeOf :: SDELEG -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SDELEG) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SDELEG) #

gmapT :: (forall b. Data b => b -> b) -> SDELEG -> SDELEG #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SDELEG -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SDELEG -> r #

gmapQ :: (forall d. Data d => d -> u) -> SDELEG -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SDELEG -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SDELEG -> m SDELEG #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SDELEG -> m SDELEG #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SDELEG -> m SDELEG #

STS SDELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Embed SDELEG SDELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type PredicateFailure SDELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type BaseM SDELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Environment SDELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Signal SDELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type State SDELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

data SDELEGS Source #

Delegation scheduling sequencing

Instances

Instances details
Data SDELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SDELEGS -> c SDELEGS #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SDELEGS #

toConstr :: SDELEGS -> Constr #

dataTypeOf :: SDELEGS -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SDELEGS) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SDELEGS) #

gmapT :: (forall b. Data b => b -> b) -> SDELEGS -> SDELEGS #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SDELEGS -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SDELEGS -> r #

gmapQ :: (forall d. Data d => d -> u) -> SDELEGS -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SDELEGS -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SDELEGS -> m SDELEGS #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SDELEGS -> m SDELEGS #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SDELEGS -> m SDELEGS #

STS SDELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Embed SDELEGS DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Embed SDELEG SDELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type PredicateFailure SDELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type BaseM SDELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Environment SDELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Signal SDELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type State SDELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

data DSState Source #

Delegation scheduling state

Constructors

DSState [(Slot, (VKeyGenesis, VKey))] (Set (Epoch, VKeyGenesis)) 

Instances

Instances details
Eq DSState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

(==) :: DSState -> DSState -> Bool #

(/=) :: DSState -> DSState -> Bool #

Show DSState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic DSState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep DSState :: Type -> Type #

Methods

from :: DSState -> Rep DSState x #

to :: Rep DSState x -> DSState #

NoThunks DSState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

HasScheduledDelegations DSState [(Slot, (VKeyGenesis, VKey))] Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DSState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DSState = D1 ('MetaData "DSState" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "DSState" 'PrefixI 'True) (S1 ('MetaSel ('Just "_dSStateScheduledDelegations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [(Slot, (VKeyGenesis, VKey))]) :*: S1 ('MetaSel ('Just "_dSStateKeyEpochDelegations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Set (Epoch, VKeyGenesis)))))

data DCert Source #

A delegation certificate.

Constructors

DCert VKeyGenesis VKey Epoch (Sig (VKey, Epoch)) 

Instances

Instances details
Eq DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

(==) :: DCert -> DCert -> Bool #

(/=) :: DCert -> DCert -> Bool #

Data DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DCert -> c DCert #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DCert #

toConstr :: DCert -> Constr #

dataTypeOf :: DCert -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DCert) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DCert) #

gmapT :: (forall b. Data b => b -> b) -> DCert -> DCert #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DCert -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DCert -> r #

gmapQ :: (forall d. Data d => d -> u) -> DCert -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DCert -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DCert -> m DCert #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DCert -> m DCert #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DCert -> m DCert #

Ord DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

compare :: DCert -> DCert -> Ordering #

(<) :: DCert -> DCert -> Bool #

(<=) :: DCert -> DCert -> Bool #

(>) :: DCert -> DCert -> Bool #

(>=) :: DCert -> DCert -> Bool #

max :: DCert -> DCert -> DCert #

min :: DCert -> DCert -> DCert #

Show DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

showsPrec :: Int -> DCert -> ShowS #

show :: DCert -> String #

showList :: [DCert] -> ShowS #

Generic DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep DCert :: Type -> Type #

Methods

from :: DCert -> Rep DCert x #

to :: Rep DCert x -> DCert #

Hashable DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

AddShrinks DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

NoThunks DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

HasTypeReps DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

GeneOps genome => Goblin genome DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

tinker :: Gen DCert -> TinkerM genome (Gen DCert) Source #

conjure :: TinkerM genome DCert Source #

HasHash [DCert] Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

hash :: [DCert] -> Hash Source #

type Rep DCert Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DCert = D1 ('MetaData "DCert" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "DCert" 'PrefixI 'True) ((S1 ('MetaSel ('Just "delegator") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 VKeyGenesis) :*: S1 ('MetaSel ('Just "delegate") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 VKey)) :*: (S1 ('MetaSel ('Just "depoch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Epoch) :*: S1 ('MetaSel ('Just "signature") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Sig (VKey, Epoch))))))

delegator :: DCert -> VKeyGenesis Source #

Key that delegates

delegate :: DCert -> VKey Source #

Key that the delegator is delegating to

depoch :: DCert -> Epoch Source #

Certificate epoch

dwho :: DCert -> (VKeyGenesis, VKey) Source #

Who is delegating to whom.

signature :: DCert -> Sig (VKey, Epoch) Source #

Witness for the delegation certificate

Delegation activation

data ADELEG Source #

Delegation rules

Instances

Instances details
Data ADELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ADELEG -> c ADELEG #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ADELEG #

toConstr :: ADELEG -> Constr #

dataTypeOf :: ADELEG -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ADELEG) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ADELEG) #

gmapT :: (forall b. Data b => b -> b) -> ADELEG -> ADELEG #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ADELEG -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ADELEG -> r #

gmapQ :: (forall d. Data d => d -> u) -> ADELEG -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ADELEG -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ADELEG -> m ADELEG #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ADELEG -> m ADELEG #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ADELEG -> m ADELEG #

STS ADELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Embed ADELEG ADELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type PredicateFailure ADELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type BaseM ADELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Environment ADELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Signal ADELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type State ADELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

data ADELEGS Source #

Delegation rules sequencing

Instances

Instances details
Data ADELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ADELEGS -> c ADELEGS #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ADELEGS #

toConstr :: ADELEGS -> Constr #

dataTypeOf :: ADELEGS -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ADELEGS) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ADELEGS) #

gmapT :: (forall b. Data b => b -> b) -> ADELEGS -> ADELEGS #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ADELEGS -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ADELEGS -> r #

gmapQ :: (forall d. Data d => d -> u) -> ADELEGS -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ADELEGS -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ADELEGS -> m ADELEGS #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ADELEGS -> m ADELEGS #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ADELEGS -> m ADELEGS #

STS ADELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Embed ADELEGS DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Embed ADELEG ADELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type PredicateFailure ADELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type BaseM ADELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Environment ADELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Signal ADELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type State ADELEGS Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

data DSEnv Source #

Delegation scheduling environment

Constructors

DSEnv 

Fields

Instances

Instances details
Eq DSEnv Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

(==) :: DSEnv -> DSEnv -> Bool #

(/=) :: DSEnv -> DSEnv -> Bool #

Show DSEnv Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

showsPrec :: Int -> DSEnv -> ShowS #

show :: DSEnv -> String #

showList :: [DSEnv] -> ShowS #

Generic DSEnv Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep DSEnv :: Type -> Type #

Methods

from :: DSEnv -> Rep DSEnv x #

to :: Rep DSEnv x -> DSEnv #

SeedGoblin DSEnv Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

seeder :: DSEnv -> TinkerM g () Source #

NoThunks DSEnv Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DSEnv Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DSEnv = D1 ('MetaData "DSEnv" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "DSEnv" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_dSEnvAllowedDelegators") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Set VKeyGenesis)) :*: S1 ('MetaSel ('Just "_dSEnvEpoch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Epoch)) :*: (S1 ('MetaSel ('Just "_dSEnvSlot") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Slot) :*: S1 ('MetaSel ('Just "_dSEnvK") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 BlockCount))))

allowedDelegators :: HasAllowedDelegators s a => Lens' s a Source #

data DState Source #

Delegation state

Constructors

DState 

Fields

Instances

Instances details
Eq DState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

(==) :: DState -> DState -> Bool #

(/=) :: DState -> DState -> Bool #

Show DState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic DState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep DState :: Type -> Type #

Methods

from :: DState -> Rep DState x #

to :: Rep DState x -> DState #

NoThunks DState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DState = D1 ('MetaData "DState" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "DState" 'PrefixI 'True) (S1 ('MetaSel ('Just "_dStateDelegationMap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Bimap VKeyGenesis VKey)) :*: S1 ('MetaSel ('Just "_dStateLastDelegation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Map VKeyGenesis Slot))))

Delegation interface

data DELEG Source #

Delegation interface

Instances

Instances details
Data DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DELEG -> c DELEG #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DELEG #

toConstr :: DELEG -> Constr #

dataTypeOf :: DELEG -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DELEG) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DELEG) #

gmapT :: (forall b. Data b => b -> b) -> DELEG -> DELEG #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DELEG -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DELEG -> r #

gmapQ :: (forall d. Data d => d -> u) -> DELEG -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DELEG -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DELEG -> m DELEG #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DELEG -> m DELEG #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DELEG -> m DELEG #

STS DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

HasTrace DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type BaseEnv DELEG Source #

Embed ADELEGS DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Embed SDELEGS DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type PredicateFailure DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type BaseM DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Environment DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Signal DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Signal DELEG = [DCert]
type State DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type BaseEnv DELEG Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type BaseEnv DELEG = ()

type DIEnv = DSEnv Source #

Interface environment is the same as scheduling environment.

data DIState Source #

Instances

Instances details
Eq DIState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

(==) :: DIState -> DIState -> Bool #

(/=) :: DIState -> DIState -> Bool #

Show DIState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic DIState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep DIState :: Type -> Type #

Methods

from :: DIState -> Rep DIState x #

to :: Rep DIState x -> DIState #

SeedGoblin DIState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

seeder :: DIState -> TinkerM g () Source #

NoThunks DIState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

HasScheduledDelegations DIState [(Slot, (VKeyGenesis, VKey))] Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DIState Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DIState = D1 ('MetaData "DIState" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "DIState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_dIStateDelegationMap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Bimap VKeyGenesis VKey)) :*: S1 ('MetaSel ('Just "_dIStateLastDelegation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Map VKeyGenesis Slot))) :*: (S1 ('MetaSel ('Just "_dIStateScheduledDelegations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [(Slot, (VKeyGenesis, VKey))]) :*: S1 ('MetaSel ('Just "_dIStateKeyEpochDelegations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Set (Epoch, VKeyGenesis))))))

liveAfter :: BlockCount -> SlotCount Source #

Compute after which slot the delegation certificate will become live, using the chain stability parameter.

data EpochDiff Source #

Constructors

EpochDiff 

Instances

Instances details
Eq EpochDiff Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Data EpochDiff Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> EpochDiff -> c EpochDiff #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c EpochDiff #

toConstr :: EpochDiff -> Constr #

dataTypeOf :: EpochDiff -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c EpochDiff) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c EpochDiff) #

gmapT :: (forall b. Data b => b -> b) -> EpochDiff -> EpochDiff #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> EpochDiff -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> EpochDiff -> r #

gmapQ :: (forall d. Data d => d -> u) -> EpochDiff -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> EpochDiff -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> EpochDiff -> m EpochDiff #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> EpochDiff -> m EpochDiff #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> EpochDiff -> m EpochDiff #

Show EpochDiff Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic EpochDiff Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep EpochDiff :: Type -> Type #

NoThunks EpochDiff Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep EpochDiff Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep EpochDiff = D1 ('MetaData "EpochDiff" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "EpochDiff" 'PrefixI 'True) (S1 ('MetaSel ('Just "currentEpoch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Epoch) :*: S1 ('MetaSel ('Just "certEpoch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Epoch)))

State lens fields

slot :: HasSlot s a => Lens' s a Source #

epoch :: HasEpoch s a => Lens' s a Source #

delegationMap :: HasDelegationMap s a => Lens' s a Source #

State lens type classes

dmsL :: HasDelegationMap a (Bimap VKeyGenesis VKey) => Lens' a (Bimap VKeyGenesis VKey) Source #

Generators

initialEnvFromGenesisKeys Source #

Arguments

:: Word8

Number of genesis keys.

-> Word64

Chain length

-> Gen DSEnv 

Generate an initial DELEG environment from the given number of genesis keys.

randomDCertGen :: Environment DELEG -> Gen DCert Source #

Generate a random delegation certificate, which has a high probability of failing since we do not consider the current delegation state. So for instance, we could generate a delegation certificate for a genesis key that already delegated in this epoch.

Functions on delegation state

Support Functions for delegation properties

emptyDelegationPayloadRatio :: [[DCert]] -> Double Source #

Ratio of certificate groups that are empty

thisEpochDelegationsRatio :: [(Epoch, Epoch)] -> Double Source #

Ratio of certificates that delegate to _this_ epoch, where each certificate is represented by (current epoch,cert epoch)

nextEpochDelegationsRatio :: [(Epoch, Epoch)] -> Double Source #

Ratio of certificates that delegate to the _next_ epoch, where each certificate is represented by (current epoch,cert epoch)

selfDelegationsRatio :: [DCert] -> Double Source #

Ratio of certificates that "delegate to self", that is, where the delegator and delegate are the same

multipleDelegationsRatio :: [DCert] -> Double Source #

Ratio of delegates that have multiple delegators that are delegating to them

maxDelegationsTo :: [DCert] -> Int Source #

The maximum number of delegators to any particular delegate

changedDelegationsRatio :: [DCert] -> Double Source #

Ratio of delegators that have changed their delegations

maxChangedDelegations :: [DCert] -> Int Source #

The maximum number of change-of-delegate for any particular delegator

repeatedDelegationsRatio :: [DCert] -> Double Source #

Ratio of repeated delegations to all delegations

maxRepeatedDelegations :: [DCert] -> Int Source #

The maximum number of repeated delegations in the given certificates

Predicate failures

data AdelegPredicateFailure Source #

None of these PredicateFailures are actually "throwable". The disjuction of the rules' preconditions is True, which means that one of them will pass. The PredicateFailure just act as switches to direct control flow to the successful one.

Instances

Instances details
Eq AdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Data AdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AdelegPredicateFailure -> c AdelegPredicateFailure #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AdelegPredicateFailure #

toConstr :: AdelegPredicateFailure -> Constr #

dataTypeOf :: AdelegPredicateFailure -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AdelegPredicateFailure) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AdelegPredicateFailure) #

gmapT :: (forall b. Data b => b -> b) -> AdelegPredicateFailure -> AdelegPredicateFailure #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AdelegPredicateFailure -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AdelegPredicateFailure -> r #

gmapQ :: (forall d. Data d => d -> u) -> AdelegPredicateFailure -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> AdelegPredicateFailure -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> AdelegPredicateFailure -> m AdelegPredicateFailure #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AdelegPredicateFailure -> m AdelegPredicateFailure #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AdelegPredicateFailure -> m AdelegPredicateFailure #

Show AdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic AdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep AdelegPredicateFailure :: Type -> Type #

NoThunks AdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep AdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep AdelegPredicateFailure = D1 ('MetaData "AdelegPredicateFailure" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) ((C1 ('MetaCons "S_BeforeExistingDelegation" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "S_NoLastDelegation" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "S_AfterExistingDelegation" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "S_AlreadyADelegateOf" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 VKey) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 VKeyGenesis))))

data AdelegsPredicateFailure Source #

Instances

Instances details
Eq AdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Data AdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AdelegsPredicateFailure -> c AdelegsPredicateFailure #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AdelegsPredicateFailure #

toConstr :: AdelegsPredicateFailure -> Constr #

dataTypeOf :: AdelegsPredicateFailure -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AdelegsPredicateFailure) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AdelegsPredicateFailure) #

gmapT :: (forall b. Data b => b -> b) -> AdelegsPredicateFailure -> AdelegsPredicateFailure #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AdelegsPredicateFailure -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AdelegsPredicateFailure -> r #

gmapQ :: (forall d. Data d => d -> u) -> AdelegsPredicateFailure -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> AdelegsPredicateFailure -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> AdelegsPredicateFailure -> m AdelegsPredicateFailure #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AdelegsPredicateFailure -> m AdelegsPredicateFailure #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AdelegsPredicateFailure -> m AdelegsPredicateFailure #

Show AdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic AdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep AdelegsPredicateFailure :: Type -> Type #

NoThunks AdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep AdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep AdelegsPredicateFailure = D1 ('MetaData "AdelegsPredicateFailure" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "ADelegFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (PredicateFailure ADELEG))))

data SdelegPredicateFailure Source #

These PredicateFailures are all "throwable". The disjunction of the rules' preconditions is not True - the PredicateFailures represent False cases.

Instances

Instances details
Eq SdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Data SdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SdelegPredicateFailure -> c SdelegPredicateFailure #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SdelegPredicateFailure #

toConstr :: SdelegPredicateFailure -> Constr #

dataTypeOf :: SdelegPredicateFailure -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SdelegPredicateFailure) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SdelegPredicateFailure) #

gmapT :: (forall b. Data b => b -> b) -> SdelegPredicateFailure -> SdelegPredicateFailure #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SdelegPredicateFailure -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SdelegPredicateFailure -> r #

gmapQ :: (forall d. Data d => d -> u) -> SdelegPredicateFailure -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SdelegPredicateFailure -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SdelegPredicateFailure -> m SdelegPredicateFailure #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SdelegPredicateFailure -> m SdelegPredicateFailure #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SdelegPredicateFailure -> m SdelegPredicateFailure #

Show SdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic SdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep SdelegPredicateFailure :: Type -> Type #

NoThunks SdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep SdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep SdelegPredicateFailure = D1 ('MetaData "SdelegPredicateFailure" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) ((C1 ('MetaCons "IsNotGenesisKey" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "EpochInThePast" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 EpochDiff)) :+: C1 ('MetaCons "EpochPastNextEpoch" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 EpochDiff)))) :+: (C1 ('MetaCons "HasAlreadyDelegated" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "IsAlreadyScheduled" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DoesNotVerify" 'PrefixI 'False) (U1 :: Type -> Type))))

data SdelegsPredicateFailure Source #

Instances

Instances details
Eq SdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Data SdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SdelegsPredicateFailure -> c SdelegsPredicateFailure #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SdelegsPredicateFailure #

toConstr :: SdelegsPredicateFailure -> Constr #

dataTypeOf :: SdelegsPredicateFailure -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SdelegsPredicateFailure) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SdelegsPredicateFailure) #

gmapT :: (forall b. Data b => b -> b) -> SdelegsPredicateFailure -> SdelegsPredicateFailure #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SdelegsPredicateFailure -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SdelegsPredicateFailure -> r #

gmapQ :: (forall d. Data d => d -> u) -> SdelegsPredicateFailure -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SdelegsPredicateFailure -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SdelegsPredicateFailure -> m SdelegsPredicateFailure #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SdelegsPredicateFailure -> m SdelegsPredicateFailure #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SdelegsPredicateFailure -> m SdelegsPredicateFailure #

Show SdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic SdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep SdelegsPredicateFailure :: Type -> Type #

NoThunks SdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep SdelegsPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep SdelegsPredicateFailure = D1 ('MetaData "SdelegsPredicateFailure" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "SDelegFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (PredicateFailure SDELEG))))

data MsdelegPredicateFailure Source #

Instances

Instances details
Eq MsdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Data MsdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MsdelegPredicateFailure -> c MsdelegPredicateFailure #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c MsdelegPredicateFailure #

toConstr :: MsdelegPredicateFailure -> Constr #

dataTypeOf :: MsdelegPredicateFailure -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c MsdelegPredicateFailure) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c MsdelegPredicateFailure) #

gmapT :: (forall b. Data b => b -> b) -> MsdelegPredicateFailure -> MsdelegPredicateFailure #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MsdelegPredicateFailure -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MsdelegPredicateFailure -> r #

gmapQ :: (forall d. Data d => d -> u) -> MsdelegPredicateFailure -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> MsdelegPredicateFailure -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> MsdelegPredicateFailure -> m MsdelegPredicateFailure #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MsdelegPredicateFailure -> m MsdelegPredicateFailure #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MsdelegPredicateFailure -> m MsdelegPredicateFailure #

Show MsdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic MsdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep MsdelegPredicateFailure :: Type -> Type #

NoThunks MsdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep MsdelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep MsdelegPredicateFailure = D1 ('MetaData "MsdelegPredicateFailure" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "SDELEGFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (PredicateFailure SDELEG))))

data DelegPredicateFailure Source #

Instances

Instances details
Eq DelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Data DelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DelegPredicateFailure -> c DelegPredicateFailure #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DelegPredicateFailure #

toConstr :: DelegPredicateFailure -> Constr #

dataTypeOf :: DelegPredicateFailure -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DelegPredicateFailure) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DelegPredicateFailure) #

gmapT :: (forall b. Data b => b -> b) -> DelegPredicateFailure -> DelegPredicateFailure #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DelegPredicateFailure -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DelegPredicateFailure -> r #

gmapQ :: (forall d. Data d => d -> u) -> DelegPredicateFailure -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DelegPredicateFailure -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DelegPredicateFailure -> m DelegPredicateFailure #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DelegPredicateFailure -> m DelegPredicateFailure #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DelegPredicateFailure -> m DelegPredicateFailure #

Show DelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Generic DelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

Associated Types

type Rep DelegPredicateFailure :: Type -> Type #

NoThunks DelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DelegPredicateFailure Source # 
Instance details

Defined in Byron.Spec.Ledger.Delegation

type Rep DelegPredicateFailure = D1 ('MetaData "DelegPredicateFailure" "Byron.Spec.Ledger.Delegation" "byron-spec-ledger-0.1.0.0-AWpYh6fpW7YLETcmEzrAvm" 'False) (C1 ('MetaCons "SDelegSFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (PredicateFailure SDELEGS))) :+: C1 ('MetaCons "ADelegSFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (PredicateFailure ADELEGS))))