ass_core/utils/errors/
conversions.rs1use super::CoreError;
7
8#[cfg(not(feature = "std"))]
9extern crate alloc;
10#[cfg(not(feature = "std"))]
11use alloc::format;
12
13impl From<crate::parser::ParseError> for CoreError {
15 fn from(err: crate::parser::ParseError) -> Self {
16 Self::Parse(err)
17 }
18}
19
20#[cfg(feature = "std")]
22impl From<std::io::Error> for CoreError {
23 fn from(err: std::io::Error) -> Self {
24 Self::Io(format!("{err}"))
25 }
26}
27
28impl From<::core::str::Utf8Error> for CoreError {
30 fn from(err: ::core::str::Utf8Error) -> Self {
31 Self::Utf8Error {
32 position: 0, message: format!("{err}"),
34 }
35 }
36}
37
38impl From<::core::num::ParseIntError> for CoreError {
40 fn from(err: ::core::num::ParseIntError) -> Self {
41 Self::InvalidNumeric(format!("Integer parse error: {err}"))
42 }
43}
44
45impl From<::core::num::ParseFloatError> for CoreError {
47 fn from(err: ::core::num::ParseFloatError) -> Self {
48 Self::InvalidNumeric(format!("Float parse error: {err}"))
49 }
50}