1use crate::{descriptor::PeekDescriptor, value::de::ValueType};
2
3#[derive(Debug, Default)]
4pub(crate) enum SequenceType {
5 #[default]
6 List,
7 Array,
8 TransparentVec,
9}
10
11#[derive(Debug)]
12pub(crate) enum NonNativeType {
13 Dec32,
14 Dec64,
15 Dec128,
16 Symbol,
17 SymbolRef,
18 Timestamp,
19 Uuid,
20 LazyValue,
21}
22
23#[derive(Debug, Clone)]
24pub enum IsArrayElement {
25 False,
26 FirstElement,
27 OtherElement,
28}
29
30#[derive(Debug, Clone)]
31pub enum EnumType {
32 None,
33 Array,
34 Descriptor,
35 Value,
36}
37
38impl Default for EnumType {
39 fn default() -> Self {
40 Self::None
41 }
42}
43
44#[derive(Debug)]
46pub(crate) enum FieldRole {
47 Descriptor,
48 Fields,
49}
50
51#[derive(Debug, Clone)]
52#[repr(u8)]
53pub enum StructEncoding {
54 None,
55 DescribedList,
56 DescribedMap,
57 DescribedBasic,
58}
59
60impl Default for StructEncoding {
61 fn default() -> Self {
62 Self::None
63 }
64}
65
66#[derive(Debug, PartialEq, Eq)]
67pub(crate) enum PeekTypeCode {
68 Primitive(ValueType),
69 Composite(PeekDescriptor),
70}