antimatter_api 2.0.13

Interact with the Antimatter Cloud API
Documentation
/*
 * Antimatter Public API
 *
 * Interact with the Antimatter Cloud API
 *
 * The version of the OpenAPI document: 2.0.13
 * Contact: support@antimatter.io
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ReadContextRuleFactsInnerArgumentsInner {
    #[serde(rename = "source", skip_serializing_if = "Option::is_none")]
    pub source: Option<Source>,
    /// for source in [domainIdentity, readParameters, tags] what key to use
    #[serde(rename = "key", skip_serializing_if = "Option::is_none")]
    pub key: Option<String>,
    /// if source is literal, what is the value
    #[serde(rename = "value", skip_serializing_if = "Option::is_none")]
    pub value: Option<String>,
}

impl ReadContextRuleFactsInnerArgumentsInner {
    pub fn new() -> ReadContextRuleFactsInnerArgumentsInner {
        ReadContextRuleFactsInnerArgumentsInner {
            source: None,
            key: None,
            value: None,
        }
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Source {
    #[serde(rename = "domainIdentity")]
    DomainIdentity,
    #[serde(rename = "readParameters")]
    ReadParameters,
    #[serde(rename = "tags")]
    Tags,
    #[serde(rename = "literal")]
    Literal,
}

impl Default for Source {
    fn default() -> Source {
        Self::DomainIdentity
    }
}