1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
use super::*;
pub type CibouletteBodyDataBuilder<'request> =
CibouletteOptionalData<CibouletteResourceSelectorBuilder<'request>>;
pub type CibouletteBodyData<'request, I, B> =
CibouletteOptionalData<CibouletteResourceSelector<'request, B, I>>;
pub type CibouletteBodyDataPermissive<'request> = CibouletteResourceSelector<
'request,
CibouletteResourceIdentifierPermissive<'request>,
MessyJsonObjectValue<'request>,
>;
impl<'request> CibouletteBodyDataBuilder<'request> {
pub fn build(
self,
bag: &CibouletteStore,
intention: &CibouletteIntention,
) -> Result<
CibouletteBodyData<
'request,
CibouletteResourceIdentifierPermissive<'request>,
MessyJsonObjectValue<'request>,
>,
CibouletteError,
> {
match self {
CibouletteBodyDataBuilder::Object(x) => {
Ok(CibouletteBodyData::Object(x.build(bag, intention)?))
}
CibouletteBodyDataBuilder::Null(x) => Ok(CibouletteBodyData::Null(x)),
}
}
}