chemlib/jsonb/
element_properties.rs

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
48
49
50
51
use serde::{Deserialize, Serialize};
use uuid::Uuid;

#[derive(Serialize, Deserialize, Debug, Clone)]
#[serde(rename_all = "camelCase")]
pub struct ElementProperties {
    #[serde(skip_serializing_if = "Option::is_none")]
    pub appearance: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub boil: Option<f32>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub category: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub discovered_by: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub melt: Option<f32>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub molar_heat: Option<f32>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub named_by: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub number: Option<i32>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub period: Option<i32>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub source: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub spectral_img: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub summary: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub symbol: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub xpos: Option<i32>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub ypos: Option<i32>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub shells: Option<Vec<i32>>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub electron_configuration: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub selectron_configuration_semantic: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub electron_affinity: Option<f32>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub electronegativity_pauling: Option<f32>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub ionization_energies: Option<Vec<f32>>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub allotrope: Option<Vec<Uuid>>,
}