1pub use crate::utils::*;
2use vstd::prelude::*;
3use vstd::*;
4
5verus! {
6
7#[derive(Debug)]
9pub enum ParseError {
10 AndThenUnusedBytes,
12 BuilderError,
13 UnexpectedEndOfInput,
14 OrdChoiceNoMatch,
15 CondFailed,
16 SizeOverflow,
17 TryMapFailed,
18 RefinedPredicateFailed,
19 RepeatEmptyElement,
20 Other(String),
21}
22
23#[derive(Debug)]
25pub enum SerializeError {
26 InsufficientBuffer,
27 AndThenUnusedBytes,
28 CondFailed,
29 SizeOverflow,
30 TryMapFailed,
31 RefinedPredicateFailed,
32 RepeatEmptyElement,
33 Other(String),
34}
35
36#[derive(Debug)]
38pub enum Error {
39 Parse(ParseError),
41 Serialize(SerializeError),
43}
44
45impl std::convert::From<ParseError> for Error {
46 fn from(e: ParseError) -> Self {
47 Error::Parse(e)
48 }
49}
50
51impl std::convert::From<SerializeError> for Error {
52 fn from(e: SerializeError) -> Self {
53 Error::Serialize(e)
54 }
55}
56
57}