nile_client_rs/models/
user.rs1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
12pub struct User {
13 #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
14 pub id: Option<String>,
15 #[serde(rename = "created", skip_serializing_if = "Option::is_none")]
16 pub created: Option<String>,
17 #[serde(rename = "updated", skip_serializing_if = "Option::is_none")]
18 pub updated: Option<String>,
19 #[serde(rename = "seq", skip_serializing_if = "Option::is_none")]
20 pub seq: Option<i64>,
21 #[serde(rename = "type")]
22 pub r#type: RHashType,
23 #[serde(rename = "metadata", skip_serializing_if = "Option::is_none")]
25 pub metadata: Option<serde_json::Value>,
26 #[serde(rename = "org_memberships", skip_serializing_if = "Option::is_none")]
27 pub org_memberships: Option<::std::collections::HashMap<String, crate::models::OrgMembership>>,
28 #[serde(rename = "email")]
29 pub email: String,
30}
31
32impl User {
33 pub fn new(r#type: RHashType, email: String) -> User {
34 User {
35 id: None,
36 created: None,
37 updated: None,
38 seq: None,
39 r#type,
40 metadata: None,
41 org_memberships: None,
42 email,
43 }
44 }
45}
46
47#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
49pub enum RHashType {
50 #[serde(rename = "user")]
51 User,
52 #[serde(rename = "developer")]
53 Developer,
54 #[serde(rename = "service_account")]
55 ServiceAccount,
56 #[serde(rename = "nile_employee")]
57 NileEmployee,
58}
59
60impl Default for RHashType {
61 fn default() -> RHashType {
62 Self::User
63 }
64}
65
66use serde::{Deserialize, Serialize};