onesignal_rust_api/models/
journey_event_attribute.rs1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct JourneyEventAttribute {
15 #[serde(rename = "key")]
17 pub key: String,
18 #[serde(rename = "operator")]
20 pub operator: OperatorType,
21 #[serde(rename = "value", skip_serializing_if = "Option::is_none")]
23 pub value: Option<String>,
24}
25
26impl JourneyEventAttribute {
27 pub fn new(key: String, operator: OperatorType) -> JourneyEventAttribute {
28 JourneyEventAttribute {
29 key,
30 operator,
31 value: None,
32 }
33 }
34}
35
36#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
38pub enum OperatorType {
39 #[serde(rename = "equal")]
40 Equal,
41 #[serde(rename = "not_equal")]
42 NotEqual,
43 #[serde(rename = "less")]
44 Less,
45 #[serde(rename = "less_or_equal")]
46 LessOrEqual,
47 #[serde(rename = "greater_or_equal")]
48 GreaterOrEqual,
49 #[serde(rename = "greater")]
50 Greater,
51 #[serde(rename = "is")]
52 Is,
53 #[serde(rename = "is_not")]
54 IsNot,
55 #[serde(rename = "exists")]
56 Exists,
57 #[serde(rename = "not_exists")]
58 NotExists,
59 #[serde(rename = "before")]
60 Before,
61 #[serde(rename = "after")]
62 After,
63}
64
65impl Default for OperatorType {
66 fn default() -> OperatorType {
67 Self::Equal
68 }
69}
70