fix(traverse): use Conway types in places they are meant to (#499)

This commit is contained in:
Matthias Benkort 2024-08-08 13:33:10 +02:00 committed by GitHub
parent 3e2c657f20
commit 5c18f06fa2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 78 additions and 22 deletions

View file

@ -370,24 +370,25 @@ impl<'b> From<MintedTransactionOutput<'b>> for TransactionOutput {
#[derive(Encode, Decode, Debug, PartialEq, Eq, Clone)]
#[cbor(map)]
pub struct PseudoPostAlonzoTransactionOutput<T1, T2> {
pub struct PseudoPostAlonzoTransactionOutput<T1, T2, T3> {
#[n(0)]
pub address: Bytes,
#[n(1)]
pub value: Value,
pub value: T1,
#[n(2)]
pub datum_option: Option<T1>,
pub datum_option: Option<T2>,
#[n(3)]
pub script_ref: Option<CborWrap<T2>>,
pub script_ref: Option<CborWrap<T3>>,
}
pub type PostAlonzoTransactionOutput = PseudoPostAlonzoTransactionOutput<DatumOption, ScriptRef>;
pub type PostAlonzoTransactionOutput =
PseudoPostAlonzoTransactionOutput<Value, DatumOption, ScriptRef>;
pub type MintedPostAlonzoTransactionOutput<'b> =
PseudoPostAlonzoTransactionOutput<MintedDatumOption<'b>, MintedScriptRef<'b>>;
PseudoPostAlonzoTransactionOutput<Value, MintedDatumOption<'b>, MintedScriptRef<'b>>;
impl<'b> From<MintedPostAlonzoTransactionOutput<'b>> for PostAlonzoTransactionOutput {
fn from(value: MintedPostAlonzoTransactionOutput<'b>) -> Self {

View file

@ -45,7 +45,7 @@ pub use crate::alonzo::AssetName;
pub type Multiasset<A> = NonEmptyKeyValuePairs<PolicyId, NonEmptyKeyValuePairs<AssetName, A>>;
pub use crate::alonzo::Mint;
pub type Mint = Multiasset<NonZeroInt>;
pub use crate::alonzo::Coin;
@ -720,7 +720,7 @@ pub struct PseudoTransactionBody<T1> {
pub certificates: Option<NonEmptySet<Certificate>>,
#[n(5)]
pub withdrawals: Option<KeyValuePairs<RewardAccount, Coin>>, // TODO: NON EMPTY
pub withdrawals: Option<NonEmptyKeyValuePairs<RewardAccount, Coin>>,
#[n(7)]
pub auxiliary_data_hash: Option<Bytes>,
@ -1220,7 +1220,8 @@ where
}
}
pub use crate::babbage::PseudoPostAlonzoTransactionOutput;
pub type PostAlonzoTransactionOutput =
crate::babbage::PseudoPostAlonzoTransactionOutput<Value, DatumOption, ScriptRef>;
pub type TransactionOutput = PseudoTransactionOutput<PostAlonzoTransactionOutput>;
@ -1236,10 +1237,11 @@ impl<'b> From<MintedTransactionOutput<'b>> for TransactionOutput {
}
}
pub type PostAlonzoTransactionOutput = PseudoPostAlonzoTransactionOutput<DatumOption, ScriptRef>;
pub type MintedPostAlonzoTransactionOutput<'b> =
PseudoPostAlonzoTransactionOutput<MintedDatumOption<'b>, MintedScriptRef<'b>>;
pub type MintedPostAlonzoTransactionOutput<'b> = crate::babbage::PseudoPostAlonzoTransactionOutput<
Value,
MintedDatumOption<'b>,
MintedScriptRef<'b>,
>;
impl<'b> From<MintedPostAlonzoTransactionOutput<'b>> for PostAlonzoTransactionOutput {
fn from(value: MintedPostAlonzoTransactionOutput<'b>) -> Self {