diff --git a/tests/ui/endpoint/invalid_params_ty.stderr b/tests/ui/endpoint/invalid_params_ty.stderr index 35ed700..de1597a 100644 --- a/tests/ui/endpoint/invalid_params_ty.stderr +++ b/tests/ui/endpoint/invalid_params_ty.stderr @@ -1,3 +1,14 @@ +error[E0277]: the trait bound `FooParams: OpenapiType` is not satisfied + --> $DIR/invalid_params_ty.rs:15:16 + | +15 | fn endpoint(_: FooParams) { + | ^^^^^^^^^ the trait `OpenapiType` is not implemented for `FooParams` + | + ::: $WORKSPACE/src/endpoint.rs + | + | #[openapi_bound("Params: OpenapiType")] + | --------------------- required by this bound in `gotham_restful::EndpointWithSchema::Params` + error[E0277]: the trait bound `for<'de> FooParams: serde::de::Deserialize<'de>` is not satisfied --> $DIR/invalid_params_ty.rs:15:16 | @@ -6,7 +17,7 @@ error[E0277]: the trait bound `for<'de> FooParams: serde::de::Deserialize<'de>` | ::: $WORKSPACE/src/endpoint.rs | - | type Params: QueryStringExtractor + Sync; + | type Params: QueryStringExtractor + Clone + Sync; | -------------------------- required by this bound in `gotham_restful::EndpointWithSchema::Params` error[E0277]: the trait bound `FooParams: StateData` is not satisfied @@ -17,7 +28,7 @@ error[E0277]: the trait bound `FooParams: StateData` is not satisfied | ::: $WORKSPACE/src/endpoint.rs | - | type Params: QueryStringExtractor + Sync; + | type Params: QueryStringExtractor + Clone + Sync; | -------------------------- required by this bound in `gotham_restful::EndpointWithSchema::Params` error[E0277]: the trait bound `FooParams: StaticResponseExtender` is not satisfied @@ -28,16 +39,16 @@ error[E0277]: the trait bound `FooParams: StaticResponseExtender` is not satisfi | ::: $WORKSPACE/src/endpoint.rs | - | type Params: QueryStringExtractor + Sync; + | type Params: QueryStringExtractor + Clone + Sync; | -------------------------- required by this bound in `gotham_restful::EndpointWithSchema::Params` -error[E0277]: the trait bound `FooParams: OpenapiType` is not satisfied +error[E0277]: the trait bound `FooParams: Clone` is not satisfied --> $DIR/invalid_params_ty.rs:15:16 | 15 | fn endpoint(_: FooParams) { - | ^^^^^^^^^ the trait `OpenapiType` is not implemented for `FooParams` + | ^^^^^^^^^ the trait `Clone` is not implemented for `FooParams` | ::: $WORKSPACE/src/endpoint.rs | - | #[openapi_bound("Params: crate::OpenapiType")] - | ---------------------------- required by this bound in `gotham_restful::EndpointWithSchema::Params` + | type Params: QueryStringExtractor + Clone + Sync; + | ----- required by this bound in `gotham_restful::EndpointWithSchema::Params` diff --git a/tests/ui/endpoint/invalid_placeholders_ty.stderr b/tests/ui/endpoint/invalid_placeholders_ty.stderr index 09c9bbb..58c8014 100644 --- a/tests/ui/endpoint/invalid_placeholders_ty.stderr +++ b/tests/ui/endpoint/invalid_placeholders_ty.stderr @@ -1,3 +1,14 @@ +error[E0277]: the trait bound `FooPlaceholders: OpenapiType` is not satisfied + --> $DIR/invalid_placeholders_ty.rs:15:16 + | +15 | fn endpoint(_: FooPlaceholders) { + | ^^^^^^^^^^^^^^^ the trait `OpenapiType` is not implemented for `FooPlaceholders` + | + ::: $WORKSPACE/src/endpoint.rs + | + | #[openapi_bound("Placeholders: OpenapiType")] + | --------------------------- required by this bound in `gotham_restful::EndpointWithSchema::Placeholders` + error[E0277]: the trait bound `for<'de> FooPlaceholders: serde::de::Deserialize<'de>` is not satisfied --> $DIR/invalid_placeholders_ty.rs:15:16 | @@ -6,7 +17,7 @@ error[E0277]: the trait bound `for<'de> FooPlaceholders: serde::de::Deserialize< | ::: $WORKSPACE/src/endpoint.rs | - | type Placeholders: PathExtractor + Sync; + | type Placeholders: PathExtractor + Clone + Sync; | ------------------- required by this bound in `gotham_restful::EndpointWithSchema::Placeholders` error[E0277]: the trait bound `FooPlaceholders: StateData` is not satisfied @@ -17,7 +28,7 @@ error[E0277]: the trait bound `FooPlaceholders: StateData` is not satisfied | ::: $WORKSPACE/src/endpoint.rs | - | type Placeholders: PathExtractor + Sync; + | type Placeholders: PathExtractor + Clone + Sync; | ------------------- required by this bound in `gotham_restful::EndpointWithSchema::Placeholders` error[E0277]: the trait bound `FooPlaceholders: StaticResponseExtender` is not satisfied @@ -28,16 +39,16 @@ error[E0277]: the trait bound `FooPlaceholders: StaticResponseExtender` is not s | ::: $WORKSPACE/src/endpoint.rs | - | type Placeholders: PathExtractor + Sync; + | type Placeholders: PathExtractor + Clone + Sync; | ------------------- required by this bound in `gotham_restful::EndpointWithSchema::Placeholders` -error[E0277]: the trait bound `FooPlaceholders: OpenapiType` is not satisfied +error[E0277]: the trait bound `FooPlaceholders: Clone` is not satisfied --> $DIR/invalid_placeholders_ty.rs:15:16 | 15 | fn endpoint(_: FooPlaceholders) { - | ^^^^^^^^^^^^^^^ the trait `OpenapiType` is not implemented for `FooPlaceholders` + | ^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `FooPlaceholders` | ::: $WORKSPACE/src/endpoint.rs | - | #[openapi_bound("Placeholders: crate::OpenapiType")] - | ---------------------------------- required by this bound in `gotham_restful::EndpointWithSchema::Placeholders` + | type Placeholders: PathExtractor + Clone + Sync; + | ----- required by this bound in `gotham_restful::EndpointWithSchema::Placeholders`