shelley-spec-ledger-0.1.0.0
Safe HaskellNone
LanguageHaskell98

Shelley.Spec.Ledger.Credential

Synopsis

Documentation

data Credential (kr :: KeyRole) crypto Source #

Script hash or key hash for a payment or a staking object.

Note that credentials (unlike raw key hashes) do appear to vary from era to era, since they reference the hash of a script, which can change. This parameter is a phantom, however, so in actuality the instances will remain the same.

Constructors

ScriptHashObj !(ScriptHash crypto) 
KeyHashObj !(KeyHash kr crypto) 

Instances

Instances details
HasKeyRole Credential Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

coerceKeyRole :: forall (r :: KeyRole) crypto (r' :: KeyRole). Credential r crypto -> Credential r' crypto Source #

Embed (StakeCreds era) (Map (Credential 'Staking era) SlotNo) Source # 
Instance details

Defined in Shelley.Spec.Ledger.TxBody

HasExp (StakeCreds era) (Map (Credential 'Staking era) SlotNo) Source # 
Instance details

Defined in Shelley.Spec.Ledger.TxBody

Methods

toExp :: StakeCreds era -> Exp (Map (Credential 'Staking era) SlotNo) Source #

Eq (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

(==) :: Credential kr crypto -> Credential kr crypto -> Bool #

(/=) :: Credential kr crypto -> Credential kr crypto -> Bool #

Ord (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

compare :: Credential kr crypto -> Credential kr crypto -> Ordering #

(<) :: Credential kr crypto -> Credential kr crypto -> Bool #

(<=) :: Credential kr crypto -> Credential kr crypto -> Bool #

(>) :: Credential kr crypto -> Credential kr crypto -> Bool #

(>=) :: Credential kr crypto -> Credential kr crypto -> Bool #

max :: Credential kr crypto -> Credential kr crypto -> Credential kr crypto #

min :: Credential kr crypto -> Credential kr crypto -> Credential kr crypto #

Show (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

showsPrec :: Int -> Credential kr crypto -> ShowS #

show :: Credential kr crypto -> String #

showList :: [Credential kr crypto] -> ShowS #

Generic (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Associated Types

type Rep (Credential kr crypto) :: Type -> Type #

Methods

from :: Credential kr crypto -> Rep (Credential kr crypto) x #

to :: Rep (Credential kr crypto) x -> Credential kr crypto #

NFData (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

rnf :: Credential kr crypto -> () #

ToJSON (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

toJSON :: Credential kr crypto -> Value Source #

toEncoding :: Credential kr crypto -> Encoding Source #

toJSONList :: [Credential kr crypto] -> Value Source #

toEncodingList :: [Credential kr crypto] -> Encoding Source #

ToJSONKey (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Crypto crypto => FromJSON (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

parseJSON :: Value -> Parser (Credential kr crypto) Source #

parseJSONList :: Value -> Parser [Credential kr crypto] Source #

Crypto crypto => FromJSONKey (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

(Typeable kr, Crypto crypto) => ToCBOR (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

toCBOR :: Credential kr crypto -> Encoding Source #

encodedSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy (Credential kr crypto) -> Size Source #

encodedListSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy [Credential kr crypto] -> Size Source #

(Typeable kr, Crypto crypto) => FromCBOR (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

fromCBOR :: Decoder s (Credential kr crypto) Source #

label :: Proxy (Credential kr crypto) -> Text Source #

NoThunks (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

type Rep (Credential kr crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

type Rep (Credential kr crypto) = D1 ('MetaData "Credential" "Shelley.Spec.Ledger.Credential" "shelley-spec-ledger-0.1.0.0-Is3EknyvW92LxCl96jGQVW" 'False) (C1 ('MetaCons "ScriptHashObj" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 (ScriptHash crypto))) :+: C1 ('MetaCons "KeyHashObj" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 (KeyHash kr crypto))))

newtype GenesisCredential crypto Source #

Constructors

GenesisCredential 

Instances

Instances details
Eq (GenesisCredential crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

(==) :: GenesisCredential crypto -> GenesisCredential crypto -> Bool #

(/=) :: GenesisCredential crypto -> GenesisCredential crypto -> Bool #

Ord (GenesisCredential crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Show (GenesisCredential crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Generic (GenesisCredential crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Associated Types

type Rep (GenesisCredential crypto) :: Type -> Type #

Methods

from :: GenesisCredential crypto -> Rep (GenesisCredential crypto) x #

to :: Rep (GenesisCredential crypto) x -> GenesisCredential crypto #

Crypto crypto => ToCBOR (GenesisCredential crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

toCBOR :: GenesisCredential crypto -> Encoding Source #

encodedSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy (GenesisCredential crypto) -> Size Source #

encodedListSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy [GenesisCredential crypto] -> Size Source #

type Rep (GenesisCredential crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

type Rep (GenesisCredential crypto) = D1 ('MetaData "GenesisCredential" "Shelley.Spec.Ledger.Credential" "shelley-spec-ledger-0.1.0.0-Is3EknyvW92LxCl96jGQVW" 'True) (C1 ('MetaCons "GenesisCredential" 'PrefixI 'True) (S1 ('MetaSel ('Just "unGenesisCredential") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (KeyHash 'Genesis crypto))))

data Ptr Source #

Pointer to a slot, transaction index and index in certificate list.

Constructors

Ptr !SlotNo !Ix !Ix 

Instances

Instances details
Eq Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

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

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

Ord Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

compare :: Ptr -> Ptr -> Ordering #

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

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

(>) :: Ptr -> Ptr -> Bool #

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

max :: Ptr -> Ptr -> Ptr #

min :: Ptr -> Ptr -> Ptr #

Show Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

showsPrec :: Int -> Ptr -> ShowS #

show :: Ptr -> String #

showList :: [Ptr] -> ShowS #

Generic Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Associated Types

type Rep Ptr :: Type -> Type #

Methods

from :: Ptr -> Rep Ptr x #

to :: Rep Ptr x -> Ptr #

NFData Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

rnf :: Ptr -> () #

ToCBOR Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

toCBOR :: Ptr -> Encoding Source #

encodedSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy Ptr -> Size Source #

encodedListSizeExpr :: (forall t. ToCBOR t => Proxy t -> Size) -> Proxy [Ptr] -> Size Source #

FromCBOR Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

NoThunks Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

FromCBORGroup Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

ToCBORGroup Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

type Rep Ptr Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

type Rep Ptr = D1 ('MetaData "Ptr" "Shelley.Spec.Ledger.Credential" "shelley-spec-ledger-0.1.0.0-Is3EknyvW92LxCl96jGQVW" 'False) (C1 ('MetaCons "Ptr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SlotNo) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Ix) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Ix))))

type StakeCredential crypto = Credential 'Staking crypto Source #

data StakeReference crypto Source #

Instances

Instances details
Eq (StakeReference crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

(==) :: StakeReference crypto -> StakeReference crypto -> Bool #

(/=) :: StakeReference crypto -> StakeReference crypto -> Bool #

Ord (StakeReference crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

compare :: StakeReference crypto -> StakeReference crypto -> Ordering #

(<) :: StakeReference crypto -> StakeReference crypto -> Bool #

(<=) :: StakeReference crypto -> StakeReference crypto -> Bool #

(>) :: StakeReference crypto -> StakeReference crypto -> Bool #

(>=) :: StakeReference crypto -> StakeReference crypto -> Bool #

max :: StakeReference crypto -> StakeReference crypto -> StakeReference crypto #

min :: StakeReference crypto -> StakeReference crypto -> StakeReference crypto #

Show (StakeReference crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

showsPrec :: Int -> StakeReference crypto -> ShowS #

show :: StakeReference crypto -> String #

showList :: [StakeReference crypto] -> ShowS #

Generic (StakeReference crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Associated Types

type Rep (StakeReference crypto) :: Type -> Type #

Methods

from :: StakeReference crypto -> Rep (StakeReference crypto) x #

to :: Rep (StakeReference crypto) x -> StakeReference crypto #

NFData (StakeReference crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

Methods

rnf :: StakeReference crypto -> () #

NoThunks (StakeReference crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

type Rep (StakeReference crypto) Source # 
Instance details

Defined in Shelley.Spec.Ledger.Credential

type Rep (StakeReference crypto) = D1 ('MetaData "StakeReference" "Shelley.Spec.Ledger.Credential" "shelley-spec-ledger-0.1.0.0-Is3EknyvW92LxCl96jGQVW" 'False) (C1 ('MetaCons "StakeRefBase" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StakeCredential crypto))) :+: (C1 ('MetaCons "StakeRefPtr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Ptr)) :+: C1 ('MetaCons "StakeRefNull" 'PrefixI 'False) (U1 :: Type -> Type)))