parity_scale_codec/
lib.rs1#![doc = include_str!("../README.md")]
16#![warn(missing_docs)]
17#![cfg_attr(not(feature = "std"), no_std)]
18
19#[cfg(not(feature = "std"))]
20#[macro_use]
21#[doc(hidden)]
22pub extern crate alloc;
23
24#[cfg(feature = "derive")]
25#[allow(unused_imports)]
26#[macro_use]
27extern crate parity_scale_codec_derive;
28
29#[cfg(all(feature = "std", test))]
30#[macro_use]
31extern crate serde_derive;
32
33#[cfg(feature = "derive")]
34pub use parity_scale_codec_derive::*;
35
36#[cfg(feature = "std")]
37#[doc(hidden)]
38pub mod alloc {
39 pub use std::boxed;
40 pub use std::vec;
41 pub use std::string;
42 pub use std::borrow;
43 pub use std::collections;
44 pub use std::sync;
45 pub use std::rc;
46 pub use std::alloc;
47}
48
49mod codec;
50mod compact;
51mod joiner;
52mod keyedvec;
53#[cfg(feature = "bit-vec")]
54mod bit_vec;
55#[cfg(feature = "generic-array")]
56mod generic_array;
57mod decode_all;
58mod decode_finished;
59mod depth_limit;
60mod encode_append;
61mod encode_like;
62mod error;
63#[cfg(feature = "max-encoded-len")]
64mod max_encoded_len;
65#[cfg(feature = "max-encoded-len")]
66mod const_encoded_len;
67
68pub use self::error::Error;
69pub use self::codec::{
70 Input, Output, Decode, Encode, Codec, EncodeAsRef, WrapperTypeEncode, WrapperTypeDecode,
71 OptionBool, DecodeLength, FullCodec, FullEncode, decode_vec_with_len,
72};
73#[cfg(feature = "std")]
74pub use self::codec::IoReader;
75pub use self::compact::{Compact, HasCompact, CompactAs, CompactLen, CompactRef};
76pub use self::joiner::Joiner;
77pub use self::keyedvec::KeyedVec;
78pub use self::decode_all::DecodeAll;
79pub use self::decode_finished::DecodeFinished;
80pub use self::depth_limit::DecodeLimit;
81pub use self::encode_append::EncodeAppend;
82pub use self::encode_like::{EncodeLike, Ref};
83#[cfg(feature = "max-encoded-len")]
84pub use max_encoded_len::MaxEncodedLen;
85#[cfg(feature = "max-encoded-len")]
86pub use const_encoded_len::ConstEncodedLen;
87
88#[cfg(all(feature = "derive", feature = "max-encoded-len"))]
132pub use parity_scale_codec_derive::MaxEncodedLen;
133
134#[cfg(feature = "bytes")]
135pub use self::codec::decode_from_bytes;