jam_types/
lib.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
//! JAM types used within the PVM instances (service code and authorizer code).

#![cfg_attr(not(feature = "std"), no_std)]

extern crate alloc;

#[cfg(not(feature = "std"))]
pub use core::{
	clone::Clone,
	cmp::{Eq, PartialEq},
	fmt,
	fmt::Debug,
	option::Option,
	prelude::rust_2021::derive,
	result::Result,
};

pub use scale::{Decode, Encode, MaxEncodedLen};

#[cfg(not(feature = "std"))]
pub use alloc::vec::Vec;
pub use bounded_collections::BoundedVec;
#[cfg(feature = "std")]
pub use std::vec::Vec;

pub mod hex;
pub mod newtype;

pub mod fixed_vec;
pub use fixed_vec::FixedVec;
pub mod vec_set;
pub use vec_set::{is_disjoint, is_strict_ordered, SetLike, VecSet};
pub mod vec_map;
pub use vec_map::VecMap;
pub mod utils;
pub use utils::TakeWhen;
pub mod simple;
pub use simple::*;
pub mod simple_result_code;
pub use simple_result_code::{SimpleResult, SimpleResultCode, LOWEST_ERROR};
pub mod types;
pub use types::*;
pub mod program_blob;
pub use program_blob::*;