Skip to content

Commit 1eed1b2

Browse files
authored
sui-sdk-types: add PerEpochConfigWithSequenceNumber (#114)
1 parent b648274 commit 1eed1b2

File tree

1 file changed

+29
-5
lines changed
  • crates/sui-sdk-types/src/effects

1 file changed

+29
-5
lines changed

crates/sui-sdk-types/src/effects/v2.rs

Lines changed: 29 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -140,11 +140,12 @@ pub struct UnchangedSharedObject {
140140
/// =/ canceled
141141
/// =/ per-epoch-config
142142
///
143-
/// read-only-root = %x00 u64 digest
144-
/// mutate-deleted = %x01 u64
145-
/// read-deleted = %x02 u64
146-
/// canceled = %x03 u64
147-
/// per-epoch-config = %x04
143+
/// read-only-root = %x00 u64 digest
144+
/// mutate-deleted = %x01 u64
145+
/// read-deleted = %x02 u64
146+
/// canceled = %x03 u64
147+
/// per-epoch-config = %x04
148+
/// per-epoch-config-with-sequence-number = %x05 u64
148149
/// ```
149150
#[derive(Eq, PartialEq, Clone, Debug)]
150151
#[cfg_attr(feature = "proptest", derive(test_strategy::Arbitrary))]
@@ -166,7 +167,11 @@ pub enum UnchangedSharedKind {
166167
Canceled { version: Version },
167168

168169
/// Read of a per-epoch config object that should remain the same during an epoch.
170+
/// NOTE: Will be deprecated in the near future in favor of `PerEpochConfigWithSequenceNumber`.
169171
PerEpochConfig,
172+
173+
/// Read of a per-epoch config and it's starting sequence number in the epoch.
174+
PerEpochConfigWithSequenceNumber { version: Version },
170175
}
171176

172177
/// State of an object prior to execution
@@ -488,6 +493,10 @@ mod serialization {
488493
version: Version,
489494
},
490495
PerEpochConfig,
496+
PerEpochConfigWithSequenceNumber {
497+
#[serde(with = "crate::_serde::ReadableDisplay")]
498+
version: Version,
499+
},
491500
}
492501

493502
#[derive(serde_derive::Serialize, serde_derive::Deserialize)]
@@ -506,6 +515,9 @@ mod serialization {
506515
version: Version,
507516
},
508517
PerEpochConfig,
518+
PerEpochConfigWithSequenceNumber {
519+
version: Version,
520+
},
509521
}
510522

511523
impl Serialize for UnchangedSharedKind {
@@ -530,6 +542,9 @@ mod serialization {
530542
UnchangedSharedKind::PerEpochConfig => {
531543
ReadableUnchangedSharedKind::PerEpochConfig
532544
}
545+
UnchangedSharedKind::PerEpochConfigWithSequenceNumber { version } => {
546+
ReadableUnchangedSharedKind::PerEpochConfigWithSequenceNumber { version }
547+
}
533548
};
534549
readable.serialize(serializer)
535550
} else {
@@ -549,6 +564,9 @@ mod serialization {
549564
UnchangedSharedKind::PerEpochConfig => {
550565
BinaryUnchangedSharedKind::PerEpochConfig
551566
}
567+
UnchangedSharedKind::PerEpochConfigWithSequenceNumber { version } => {
568+
BinaryUnchangedSharedKind::PerEpochConfigWithSequenceNumber { version }
569+
}
552570
};
553571
binary.serialize(serializer)
554572
}
@@ -576,6 +594,9 @@ mod serialization {
576594
Self::Canceled { version }
577595
}
578596
ReadableUnchangedSharedKind::PerEpochConfig => Self::PerEpochConfig,
597+
ReadableUnchangedSharedKind::PerEpochConfigWithSequenceNumber {
598+
version,
599+
} => Self::PerEpochConfigWithSequenceNumber { version },
579600
},
580601
)
581602
} else {
@@ -591,6 +612,9 @@ mod serialization {
591612
}
592613
BinaryUnchangedSharedKind::Canceled { version } => Self::Canceled { version },
593614
BinaryUnchangedSharedKind::PerEpochConfig => Self::PerEpochConfig,
615+
BinaryUnchangedSharedKind::PerEpochConfigWithSequenceNumber { version } => {
616+
Self::PerEpochConfigWithSequenceNumber { version }
617+
}
594618
})
595619
}
596620
}

0 commit comments

Comments
 (0)