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