scientific_method/
conclusion.rs1#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
8#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9#[cfg_attr(feature = "serde", serde(rename_all = "snake_case"))]
10pub enum Outcome {
11 Supported,
12 NotSupported,
13 Inconclusive,
14}
15
16#[derive(Debug, Clone, PartialEq, Eq)]
18#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
19pub struct Conclusion {
20 pub outcome: Outcome,
21 pub summary: Option<String>,
22}
23
24impl Conclusion {
25 pub fn new(outcome: Outcome) -> Self {
26 Self {
27 outcome,
28 summary: None,
29 }
30 }
31
32 pub fn with_summary(mut self, summary: impl Into<String>) -> Self {
33 self.summary = Some(summary.into());
34 self
35 }
36}