Safe Haskell | None |
---|---|
Language | Haskell2010 |
Ouroboros.Consensus.Shelley.Node
Contents
Synopsis
- protocolInfoShelley :: forall m c f. (IOLike m, ShelleyBasedEra (ShelleyEra c), Foldable f) => ProtocolParamsShelley c f -> ProtocolInfo m (ShelleyBlock (ShelleyEra c))
- data ProtocolParamsShelley c f = ProtocolParamsShelley {}
- data ProtocolParamsAllegra c f = ProtocolParamsAllegra {}
- data ProtocolParamsMary c f = ProtocolParamsMary {}
- protocolClientInfoShelley :: ProtocolClientInfo (ShelleyBlock era)
- data ShelleyGenesis era = ShelleyGenesis {
- sgSystemStart :: !UTCTime
- sgNetworkMagic :: !Word32
- sgNetworkId :: !Network
- sgActiveSlotsCoeff :: !Rational
- sgSecurityParam :: !Word64
- sgEpochLength :: !EpochSize
- sgSlotsPerKESPeriod :: !Word64
- sgMaxKESEvolutions :: !Word64
- sgSlotLength :: !NominalDiffTime
- sgUpdateQuorum :: !Word64
- sgMaxLovelaceSupply :: !Word64
- sgProtocolParams :: !(PParams era)
- sgGenDelegs :: !(Map (KeyHash 'Genesis (Crypto era)) (GenDelegPair (Crypto era)))
- sgInitialFunds :: !(Map (Addr era) Coin)
- sgStaking :: !(ShelleyGenesisStaking era)
- data ShelleyGenesisStaking era = ShelleyGenesisStaking {}
- data TPraosLeaderCredentials c = TPraosLeaderCredentials {}
- shelleyBlockForging :: forall m era. (ShelleyBasedEra era, IOLike m) => TPraosParams -> TPraosLeaderCredentials (EraCrypto era) -> m (BlockForging m (ShelleyBlock era))
- tpraosBlockIssuerVKey :: TPraosLeaderCredentials c -> VKey 'BlockIssuer c
- data ProtVer = ProtVer {}
- data Nonce
- = Nonce !(Hash Blake2b_256 Nonce)
- | NeutralNonce
- newtype MaxMajorProtVer = MaxMajorProtVer {}
- emptyGenesisStaking :: ShelleyGenesisStaking era
- validateGenesis :: ShelleyBasedEra era => ShelleyGenesis era -> Either String ()
Documentation
protocolInfoShelley :: forall m c f. (IOLike m, ShelleyBasedEra (ShelleyEra c), Foldable f) => ProtocolParamsShelley c f -> ProtocolInfo m (ShelleyBlock (ShelleyEra c)) Source #
data ProtocolParamsShelley c f Source #
Parameters needed to run Shelley
Constructors
ProtocolParamsShelley | |
Fields
|
data ProtocolParamsAllegra c f Source #
Parameters needed to run Allegra
Constructors
ProtocolParamsAllegra | |
Fields |
data ProtocolParamsMary c f Source #
Parameters needed to run Mary
Constructors
ProtocolParamsMary | |
Fields |
data ShelleyGenesis era Source #
Shelley genesis information
Note that this is needed only for a pure Shelley network, hence it being defined here rather than in its own module. In mainnet, Shelley will transition naturally from Byron, and thus will never have its own genesis information.
Constructors
ShelleyGenesis | |
Fields
|
Instances
data ShelleyGenesisStaking era Source #
Genesis Shelley staking configuration.
This allows us to configure some initial stake pools and delegation to them, in order to test Praos in a static configuration, without requiring on-chain registration and delegation.
For simplicity, pools defined in the genesis staking do not pay deposits for their registration.
Constructors
ShelleyGenesisStaking | |
Fields
|
Instances
data TPraosLeaderCredentials c Source #
Constructors
TPraosLeaderCredentials | |
Fields
|
shelleyBlockForging :: forall m era. (ShelleyBasedEra era, IOLike m) => TPraosParams -> TPraosLeaderCredentials (EraCrypto era) -> m (BlockForging m (ShelleyBlock era)) Source #
Instances
Eq ProtVer | |
Ord ProtVer | |
Defined in Shelley.Spec.Ledger.PParams | |
Show ProtVer | |
Generic ProtVer | |
NFData ProtVer | |
Defined in Shelley.Spec.Ledger.PParams | |
ToJSON ProtVer | |
FromJSON ProtVer | |
ToCBOR ProtVer | |
FromCBOR ProtVer | |
NoThunks ProtVer | |
ToCBORGroup ProtVer | |
FromCBORGroup ProtVer | |
Defined in Shelley.Spec.Ledger.PParams Methods fromCBORGroup :: Decoder s ProtVer Source # | |
type Rep ProtVer | |
Defined in Shelley.Spec.Ledger.PParams type Rep ProtVer = D1 ('MetaData "ProtVer" "Shelley.Spec.Ledger.PParams" "shelley-spec-ledger-0.1.0.0-92kyZKZr7Mp7w3ug0LA6KH" 'False) (C1 ('MetaCons "ProtVer" 'PrefixI 'True) (S1 ('MetaSel ('Just "pvMajor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Natural) :*: S1 ('MetaSel ('Just "pvMinor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Natural))) |
Evolving nonce type.
Constructors
Nonce !(Hash Blake2b_256 Nonce) | |
NeutralNonce | Identity element |
Instances
Eq Nonce | |
Ord Nonce | |
Show Nonce | |
Generic Nonce | |
NFData Nonce | |
Defined in Shelley.Spec.Ledger.BaseTypes | |
ToJSON Nonce | |
FromJSON Nonce | |
ToCBOR Nonce | |
FromCBOR Nonce | |
NoThunks Nonce | |
type Rep Nonce | |
Defined in Shelley.Spec.Ledger.BaseTypes type Rep Nonce = D1 ('MetaData "Nonce" "Shelley.Spec.Ledger.BaseTypes" "shelley-spec-ledger-0.1.0.0-92kyZKZr7Mp7w3ug0LA6KH" 'False) (C1 ('MetaCons "Nonce" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 (Hash Blake2b_256 Nonce))) :+: C1 ('MetaCons "NeutralNonce" 'PrefixI 'False) (U1 :: Type -> Type)) |
newtype MaxMajorProtVer Source #
The maximum major protocol version.
Must be at least the current major protocol version. For Cardano mainnet, the Shelley era has major protocol verison 2.
Constructors
MaxMajorProtVer | |
Fields |
Instances
emptyGenesisStaking :: ShelleyGenesisStaking era Source #
Empty genesis staking
validateGenesis :: ShelleyBasedEra era => ShelleyGenesis era -> Either String () Source #
Check the validity of the genesis config. To be used in conjunction with
assertWithMsg
.
Orphan instances
ShelleyBasedEra era => RunNode (ShelleyBlock era) Source # | |
ConfigSupportsNode (ShelleyBlock era) Source # | |
Methods getSystemStart :: BlockConfig (ShelleyBlock era) -> SystemStart Source # getNetworkMagic :: BlockConfig (ShelleyBlock era) -> NetworkMagic Source # | |
ShelleyBasedEra era => NodeInitStorage (ShelleyBlock era) Source # | |
Methods nodeImmutableDbChunkInfo :: StorageConfig (ShelleyBlock era) -> ChunkInfo Source # nodeCheckIntegrity :: StorageConfig (ShelleyBlock era) -> ShelleyBlock era -> Bool Source # nodeInitChainDB :: IOLike m => StorageConfig (ShelleyBlock era) -> InitChainDB m (ShelleyBlock era) -> m () Source # |