Skip to content

Commit 123d31f

Browse files
bp-runtime: make macro expansion not rely on sp-std in scope. (#7978)
make macro in bp-runtime no longer require `sp-std` in scope. --------- Co-authored-by: cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent 628bdd9 commit 123d31f

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

bridges/primitives/runtime/src/chain.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ macro_rules! decl_bridge_finality_runtime_apis {
351351
$(
352352
/// Returns the justifications accepted in the current block.
353353
fn [<synced_headers_ $consensus:lower _info>](
354-
) -> sp_std::vec::Vec<$justification_type>;
354+
) -> $crate::private::Vec<$justification_type>;
355355
)?
356356
}
357357
}
@@ -409,7 +409,7 @@ macro_rules! decl_bridge_messages_runtime_apis {
409409
lane: $lane_id_type,
410410
begin: bp_messages::MessageNonce,
411411
end: bp_messages::MessageNonce,
412-
) -> sp_std::vec::Vec<bp_messages::OutboundMessageDetails>;
412+
) -> $crate::private::Vec<bp_messages::OutboundMessageDetails>;
413413
}
414414

415415
/// Inbound message lane API for messages sent by this chain.
@@ -423,8 +423,8 @@ macro_rules! decl_bridge_messages_runtime_apis {
423423
/// Return details of given inbound messages.
424424
fn message_details(
425425
lane: $lane_id_type,
426-
messages: sp_std::vec::Vec<(bp_messages::MessagePayload, bp_messages::OutboundMessageDetails)>,
427-
) -> sp_std::vec::Vec<bp_messages::InboundMessageDetails>;
426+
messages: $crate::private::Vec<(bp_messages::MessagePayload, bp_messages::OutboundMessageDetails)>,
427+
) -> $crate::private::Vec<bp_messages::InboundMessageDetails>;
428428
}
429429
}
430430
}

bridges/primitives/runtime/src/lib.rs

+9
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@ pub use storage_proof::{
5252
};
5353
pub use storage_types::BoundedStorageValue;
5454

55+
extern crate alloc;
56+
5557
pub mod extensions;
5658
pub mod messages;
5759

@@ -62,6 +64,13 @@ mod storage_types;
6264
// Re-export macro to avoid include paste dependency everywhere
6365
pub use sp_runtime::paste;
6466

67+
// Re-export for usage in macro.
68+
#[doc(hidden)]
69+
pub mod private {
70+
#[doc(hidden)]
71+
pub use alloc::vec::Vec;
72+
}
73+
6574
/// Use this when something must be shared among all instances.
6675
pub const NO_INSTANCE_ID: ChainId = [0, 0, 0, 0];
6776

0 commit comments

Comments
 (0)