use_reaction/
reaction_kind.rs1use std::fmt;
2
3#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
5pub enum ReactionKind {
6 Synthesis,
8 Decomposition,
10 SingleReplacement,
12 DoubleReplacement,
14 Combustion,
16 AcidBase,
18 Redox,
20 Precipitation,
22 Neutralization,
24 Polymerization,
26 Unknown,
28}
29
30impl fmt::Display for ReactionKind {
31 fn fmt(&self, formatter: &mut fmt::Formatter<'_>) -> fmt::Result {
32 let value = match self {
33 Self::Synthesis => "synthesis",
34 Self::Decomposition => "decomposition",
35 Self::SingleReplacement => "single replacement",
36 Self::DoubleReplacement => "double replacement",
37 Self::Combustion => "combustion",
38 Self::AcidBase => "acid-base",
39 Self::Redox => "redox",
40 Self::Precipitation => "precipitation",
41 Self::Neutralization => "neutralization",
42 Self::Polymerization => "polymerization",
43 Self::Unknown => "unknown",
44 };
45
46 formatter.write_str(value)
47 }
48}