geoengine_api_client/models/
aggregation.rs1use crate::models;
11use serde::{Deserialize, Serialize};
12
13#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
16#[serde(untagged)]
17pub enum Aggregation {
18 MinAggregation(Box<models::MinAggregation>),
19 MaxAggregation(Box<models::MaxAggregation>),
20 FirstAggregation(Box<models::FirstAggregation>),
21 LastAggregation(Box<models::LastAggregation>),
22 MeanAggregation(Box<models::MeanAggregation>),
23 SumAggregation(Box<models::SumAggregation>),
24 CountAggregation(Box<models::CountAggregation>),
25 PercentileEstimateAggregation(Box<models::PercentileEstimateAggregation>),
26}
27
28impl Default for Aggregation {
29 fn default() -> Self {
30 Self::MinAggregation(Default::default())
31 }
32}
33#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
35pub enum Type {
36 #[serde(rename = "min")]
37 Min,
38 #[serde(rename = "max")]
39 Max,
40 #[serde(rename = "first")]
41 First,
42 #[serde(rename = "last")]
43 Last,
44 #[serde(rename = "mean")]
45 Mean,
46 #[serde(rename = "sum")]
47 Sum,
48 #[serde(rename = "count")]
49 Count,
50 #[serde(rename = "percentileEstimate")]
51 PercentileEstimate,
52}
53
54impl Default for Type {
55 fn default() -> Type {
56 Self::Min
57 }
58}
59