bark_json/exit/
package.rs1#[cfg(feature = "utoipa")]
2use utoipa::ToSchema;
3
4use crate::exit::states::ExitTxOrigin;
5use crate::primitives::TransactionInfo;
6
7#[derive(Clone, Debug, Eq, PartialEq, Deserialize, Serialize)]
8#[cfg_attr(feature = "utoipa", derive(ToSchema))]
9pub struct ExitTransactionPackage {
10 pub exit: TransactionInfo,
12 pub child: Option<ChildTransactionInfo>,
14}
15
16impl From<bark::exit::ExitTransactionPackage> for ExitTransactionPackage {
17 fn from(v: bark::exit::ExitTransactionPackage) -> Self {
18 ExitTransactionPackage {
19 exit: v.exit.into(),
20 child: v.child.map(|x| x.into()),
21 }
22 }
23}
24#[derive(Clone, Debug, Eq, PartialEq, Deserialize, Serialize)]
27#[cfg_attr(feature = "utoipa", derive(ToSchema))]
28pub struct ChildTransactionInfo {
29 pub info: TransactionInfo,
30 pub origin: ExitTxOrigin,
31}
32
33impl From<bark::exit::ChildTransactionInfo> for ChildTransactionInfo {
34 fn from(v: bark::exit::ChildTransactionInfo) -> Self {
35 ChildTransactionInfo { info: v.info.into(), origin: v.origin.into() }
36 }
37}