Skip to main content

sark_core/route/
input.rs

1use std::convert;
2
3use crate::route::Never;
4
5/// Exact failure while constructing request input from routed parameters or body data.
6#[derive(Debug)]
7pub enum Input<P, B, R = convert::Infallible> {
8    Params(P),
9    Body(B),
10    Retain(R),
11}
12
13impl<P: Never, B: Never, R: Never> Never for Input<P, B, R> {
14    fn never<T>(self) -> T {
15        match self {
16            Self::Params(error) => error.never(),
17            Self::Body(error) => error.never(),
18            Self::Retain(error) => error.never(),
19        }
20    }
21}