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
45
46
47
use super::SerializationError;
pub trait DbvFactory: Sized {
type DBV;
fn from_bool(&self, value: bool) -> Result<Self::DBV, SerializationError>;
fn from_i8(&self, value: i8) -> Result<Self::DBV, SerializationError>;
fn from_i16(&self, value: i16) -> Result<Self::DBV, SerializationError>;
fn from_i32(&self, value: i32) -> Result<Self::DBV, SerializationError>;
fn from_i64(&self, value: i64) -> Result<Self::DBV, SerializationError>;
fn from_u8(&self, value: u8) -> Result<Self::DBV, SerializationError>;
fn from_u16(&self, value: u16) -> Result<Self::DBV, SerializationError>;
fn from_u32(&self, value: u32) -> Result<Self::DBV, SerializationError>;
fn from_u64(&self, value: u64) -> Result<Self::DBV, SerializationError>;
fn from_f32(&self, value: f32) -> Result<Self::DBV, SerializationError>;
fn from_f64(&self, value: f64) -> Result<Self::DBV, SerializationError>;
fn from_char(&self, value: char) -> Result<Self::DBV, SerializationError>;
fn from_str(&self, value: &str) -> Result<Self::DBV, SerializationError>;
fn from_bytes(&self, value: &[u8]) -> Result<Self::DBV, SerializationError>;
fn from_none(&self) -> Result<Self::DBV, SerializationError>;
fn descriptor(&self) -> &'static str;
}