Continue defining ScriptPurpose in the standard lib.

This commit is contained in:
KtorZ 2022-11-16 18:36:47 +01:00 committed by Lucas
parent 8200afa00e
commit 5412bff9da
1 changed files with 23 additions and 3 deletions

View File

@ -9,7 +9,8 @@ pub type Hash(a) =
pub type ScriptPurpose { pub type ScriptPurpose {
Mint(PolicyId) Mint(PolicyId)
Spend(OutputReference) Spend(OutputReference)
Withdrawal(Nil) Withdrawal(StakeCredential)
Certify(Certificate)
} }
pub type Transaction { pub type Transaction {
@ -18,8 +19,8 @@ pub type Transaction {
outputs: List(Nil), outputs: List(Nil),
fee: Value, fee: Value,
mint: Value, mint: Value,
certificates: List(Nil), certificates: List(Certificate),
withdrawals: List(Nil), withdrawals: List(Pair(StakeCredential, Int)),
validity_range: Nil, validity_range: Nil,
extra_signatories: Nil, extra_signatories: Nil,
redeemers: List(Nil), redeemers: List(Nil),
@ -43,6 +44,15 @@ pub type OutputReference {
pub type PolicyId = pub type PolicyId =
ByteArray ByteArray
pub type StakeCredential =
Nil
pub type VerificationKey =
Nil
pub type PoolId =
Hash(VerificationKey)
pub type Output = pub type Output =
Nil Nil
@ -54,3 +64,13 @@ pub type Pair(a, b) =
pub type Value = pub type Value =
List(Pair(PolicyId, List(Pair(AssetName, Int)))) List(Pair(PolicyId, List(Pair(AssetName, Int))))
pub type Certificate {
CredentialRegistration { delegator: StakeCredential }
CredentialDeregistration { delegator: StakeCredential }
CredentialDelegation { delegator: StakeCredential, delegatee: PoolId }
PoolRegistration { pool_id: PoolId, vrf: Hash(VerificationKey) }
PoolDeregistration { pool_id: PoolId, epoch: Int }
Governance
TreasuryMovement
}