cardano-ledger-api-1.7.0.1: Public API for the cardano ledger codebase
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cardano.Ledger.Api.State.Query

Synopsis

GetFilteredDelegationsAndRewardAccounts

filterStakePoolDelegsAndRewards :: UMap c -> Set (Credential 'Staking c) -> (Map (Credential 'Staking c) (KeyHash 'StakePool c), Map (Credential 'Staking c) Coin) Source #

Filter out stake pool delegations and rewards for a set of stake credentials

queryStakePoolDelegsAndRewards :: NewEpochState era -> Set (Credential 'Staking (EraCrypto era)) -> (Map (Credential 'Staking (EraCrypto era)) (KeyHash 'StakePool (EraCrypto era)), Map (Credential 'Staking (EraCrypto era)) Coin) Source #

Uses filterStakePoolDelegsAndRewards to get the same information from the NewEpochState

Implementation for GetFilteredDelegationsAndRewardAccounts query.

GetGovState

queryGovState :: NewEpochState era -> GovState era Source #

This query returns all of the state related to governance

GetConstitution

queryConstitution :: EraGov era => NewEpochState era -> Maybe (Constitution era) Source #

GetConstitutionHash

queryConstitutionHash :: EraGov era => NewEpochState era -> Maybe (SafeHash (EraCrypto era) AnchorData) Source #

GetDRepState

queryDRepState Source #

Arguments

:: NewEpochState era 
-> Set (Credential 'DRepRole (EraCrypto era))

Specify a set of DRep credentials whose state should be returned. When this set is empty, states for all of the DReps will be returned.

-> Map (Credential 'DRepRole (EraCrypto era)) (DRepState (EraCrypto era)) 

Query DRep state.

GetDRepStakeDistr

queryDRepStakeDistr Source #

Arguments

:: EraGov era 
=> NewEpochState era 
-> Set (DRep (EraCrypto era))

Specify DRep Ids whose stake distribution should be returned. When this set is empty, distributions for all of the DReps will be returned.

-> Map (DRep (EraCrypto era)) Coin 

Query DRep stake distribution. Note that this can be an expensive query because there is a chance that current distribution has not been fully computed yet.

GetCommitteeState

queryCommitteeState :: NewEpochState era -> CommitteeState era Source #

Deprecated: In favor of queryCommitteeMembersState

Query committee members

GetCommitteeMembersState

queryCommitteeMembersState Source #

Arguments

:: forall era. EraGov era 
=> Set (Credential 'ColdCommitteeRole (EraCrypto era))

filter by cold credentials (don't filter when empty)

-> Set (Credential 'HotCommitteeRole (EraCrypto era))

filter by hot credentials (don't filter when empty)

-> Set MemberStatus

filter by status (don't filter when empty) (useful, for discovering, for example, only active members)

-> NewEpochState era 
-> Maybe (CommitteeMembersState (EraCrypto era)) 

Query committee members. Whenever the system is in No Confidence mode this query will return Nothing.

data CommitteeMemberState c Source #

Constructors

CommitteeMemberState 

Fields

Instances

Instances details
Crypto c => ToJSON (CommitteeMemberState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Generic (CommitteeMemberState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Associated Types

type Rep (CommitteeMemberState c) :: Type -> Type Source #

Show (CommitteeMemberState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Crypto c => DecCBOR (CommitteeMemberState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

decCBOR :: Decoder s (CommitteeMemberState c)

dropCBOR :: Proxy (CommitteeMemberState c) -> Decoder s ()

label :: Proxy (CommitteeMemberState c) -> Text

Crypto c => EncCBOR (CommitteeMemberState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

encCBOR :: CommitteeMemberState c -> Encoding

encodedSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy (CommitteeMemberState c) -> Size

encodedListSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy [CommitteeMemberState c] -> Size

Eq (CommitteeMemberState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Ord (CommitteeMemberState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

ToExpr (CommitteeMemberState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

type Rep (CommitteeMemberState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

type Rep (CommitteeMemberState c) = D1 ('MetaData "CommitteeMemberState" "Cardano.Ledger.Api.State.Query.CommitteeMembersState" "cardano-ledger-api-1.7.0.1-A9aYr2G8kKKU9Ccn1oPAm" 'False) (C1 ('MetaCons "CommitteeMemberState" 'PrefixI 'True) ((S1 ('MetaSel ('Just "cmsHotCredAuthStatus") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (HotCredAuthStatus c)) :*: S1 ('MetaSel ('Just "cmsStatus") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 MemberStatus)) :*: (S1 ('MetaSel ('Just "cmsExpiration") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe EpochNo)) :*: S1 ('MetaSel ('Just "cmsNextEpochChange") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NextEpochChange))))

data CommitteeMembersState c Source #

Constructors

CommitteeMembersState 

Fields

Instances

Instances details
Crypto c => ToJSON (CommitteeMembersState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Generic (CommitteeMembersState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Associated Types

type Rep (CommitteeMembersState c) :: Type -> Type Source #

Show (CommitteeMembersState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Crypto c => DecCBOR (CommitteeMembersState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

decCBOR :: Decoder s (CommitteeMembersState c)

dropCBOR :: Proxy (CommitteeMembersState c) -> Decoder s ()

label :: Proxy (CommitteeMembersState c) -> Text

Crypto c => EncCBOR (CommitteeMembersState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

encCBOR :: CommitteeMembersState c -> Encoding

encodedSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy (CommitteeMembersState c) -> Size

encodedListSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy [CommitteeMembersState c] -> Size

Eq (CommitteeMembersState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Ord (CommitteeMembersState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

ToExpr (CommitteeMembersState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

type Rep (CommitteeMembersState c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

type Rep (CommitteeMembersState c) = D1 ('MetaData "CommitteeMembersState" "Cardano.Ledger.Api.State.Query.CommitteeMembersState" "cardano-ledger-api-1.7.0.1-A9aYr2G8kKKU9Ccn1oPAm" 'False) (C1 ('MetaCons "CommitteeMembersState" 'PrefixI 'True) (S1 ('MetaSel ('Just "csCommittee") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map (Credential 'ColdCommitteeRole c) (CommitteeMemberState c))) :*: (S1 ('MetaSel ('Just "csQuorum") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnitInterval) :*: S1 ('MetaSel ('Just "csEpochNo") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 EpochNo))))

data HotCredAuthStatus c Source #

Constructors

MemberAuthorized (Credential 'HotCommitteeRole c) 
MemberNotAuthorized

Member enacted, but no hot credential for voting has been registered

MemberResigned 

Instances

Instances details
Crypto c => ToJSON (HotCredAuthStatus c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Generic (HotCredAuthStatus c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Associated Types

type Rep (HotCredAuthStatus c) :: Type -> Type Source #

Show (HotCredAuthStatus c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Crypto c => DecCBOR (HotCredAuthStatus c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

decCBOR :: Decoder s (HotCredAuthStatus c)

dropCBOR :: Proxy (HotCredAuthStatus c) -> Decoder s ()

label :: Proxy (HotCredAuthStatus c) -> Text

Crypto c => EncCBOR (HotCredAuthStatus c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

encCBOR :: HotCredAuthStatus c -> Encoding

encodedSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy (HotCredAuthStatus c) -> Size

encodedListSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy [HotCredAuthStatus c] -> Size

Eq (HotCredAuthStatus c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Ord (HotCredAuthStatus c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

ToExpr (HotCredAuthStatus c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

toExpr :: HotCredAuthStatus c -> Expr

listToExpr :: [HotCredAuthStatus c] -> Expr

type Rep (HotCredAuthStatus c) Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

type Rep (HotCredAuthStatus c) = D1 ('MetaData "HotCredAuthStatus" "Cardano.Ledger.Api.State.Query.CommitteeMembersState" "cardano-ledger-api-1.7.0.1-A9aYr2G8kKKU9Ccn1oPAm" 'False) (C1 ('MetaCons "MemberAuthorized" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Credential 'HotCommitteeRole c))) :+: (C1 ('MetaCons "MemberNotAuthorized" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MemberResigned" 'PrefixI 'False) (U1 :: Type -> Type)))

data MemberStatus Source #

Constructors

Active 
Expired 
Unrecognized

This can happen when a hot credential for an unknown cold credential exists. Such Committee member will be either removed from the state at the next epoch boundary or enacted as a new member.

Instances

Instances details
ToJSON MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

toJSON :: MemberStatus -> Value

toEncoding :: MemberStatus -> Encoding

toJSONList :: [MemberStatus] -> Value

toEncodingList :: [MemberStatus] -> Encoding

omitField :: MemberStatus -> Bool

Bounded MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Enum MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Generic MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Associated Types

type Rep MemberStatus :: Type -> Type Source #

Show MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

DecCBOR MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

decCBOR :: Decoder s MemberStatus

dropCBOR :: Proxy MemberStatus -> Decoder s ()

label :: Proxy MemberStatus -> Text

EncCBOR MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

encCBOR :: MemberStatus -> Encoding

encodedSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy MemberStatus -> Size

encodedListSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy [MemberStatus] -> Size

Eq MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Ord MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

ToExpr MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

toExpr :: MemberStatus -> Expr

listToExpr :: [MemberStatus] -> Expr

type Rep MemberStatus Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

type Rep MemberStatus = D1 ('MetaData "MemberStatus" "Cardano.Ledger.Api.State.Query.CommitteeMembersState" "cardano-ledger-api-1.7.0.1-A9aYr2G8kKKU9Ccn1oPAm" 'False) (C1 ('MetaCons "Active" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Expired" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Unrecognized" 'PrefixI 'False) (U1 :: Type -> Type)))

data NextEpochChange Source #

Constructors

ToBeEnacted 
ToBeRemoved

Member will be removed

NoChangeExpected 

Instances

Instances details
ToJSON NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Bounded NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Enum NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Generic NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Associated Types

type Rep NextEpochChange :: Type -> Type Source #

Show NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

DecCBOR NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

decCBOR :: Decoder s NextEpochChange

dropCBOR :: Proxy NextEpochChange -> Decoder s ()

label :: Proxy NextEpochChange -> Text

EncCBOR NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

encCBOR :: NextEpochChange -> Encoding

encodedSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy NextEpochChange -> Size

encodedListSizeExpr :: (forall t. EncCBOR t => Proxy t -> Size) -> Proxy [NextEpochChange] -> Size

Eq NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Ord NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

ToExpr NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

Methods

toExpr :: NextEpochChange -> Expr

listToExpr :: [NextEpochChange] -> Expr

type Rep NextEpochChange Source # 
Instance details

Defined in Cardano.Ledger.Api.State.Query.CommitteeMembersState

type Rep NextEpochChange = D1 ('MetaData "NextEpochChange" "Cardano.Ledger.Api.State.Query.CommitteeMembersState" "cardano-ledger-api-1.7.0.1-A9aYr2G8kKKU9Ccn1oPAm" 'False) (C1 ('MetaCons "ToBeEnacted" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ToBeRemoved" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NoChangeExpected" 'PrefixI 'False) (U1 :: Type -> Type)))