From 5a20d7692607b3f6b475b89f9dc2538d6afd0fa2 Mon Sep 17 00:00:00 2001 From: Sergio Benitez Date: Wed, 25 May 2022 18:48:27 -0700 Subject: [PATCH] Update UI tests for latest nightly. --- .../tests/ui-fail/database-types.stderr | 8 +- .../tests/ui-fail/catch_type_errors.stderr | 41 +- .../ui-fail/from_form_type_errors.stderr | 26 +- .../tests/ui-fail/responder-types.stderr | 142 +++-- .../tests/ui-fail/route-type-errors.stderr | 112 +++- .../tests/ui-fail/typed-uri-bad-type.stderr | 195 ++++-- .../ui-fail/typed-uris-invalid-syntax.stderr | 26 +- core/codegen/tests/ui-fail/uri_display.stderr | 570 +++++++++++++----- .../ui-fail/uri_display_type_errors.stderr | 201 ++++-- 9 files changed, 970 insertions(+), 351 deletions(-) diff --git a/contrib/codegen/tests/ui-fail/database-types.stderr b/contrib/codegen/tests/ui-fail/database-types.stderr index ca567d0f..974c3284 100644 --- a/contrib/codegen/tests/ui-fail/database-types.stderr +++ b/contrib/codegen/tests/ui-fail/database-types.stderr @@ -1,11 +1,15 @@ error[E0277]: the trait bound `Unknown: Poolable` is not satisfied - --> $DIR/database-types.rs:7:10 + --> tests/ui-fail/database-types.rs:7:10 | 7 | struct A(Unknown); | ^^^^^^^ the trait `Poolable` is not implemented for `Unknown` + | + = help: the trait `Poolable` is implemented for `SqliteConnection` error[E0277]: the trait bound `Vec: Poolable` is not satisfied - --> $DIR/database-types.rs:11:10 + --> tests/ui-fail/database-types.rs:11:10 | 11 | struct B(Vec); | ^^^^^^^^ the trait `Poolable` is not implemented for `Vec` + | + = help: the trait `Poolable` is implemented for `SqliteConnection` diff --git a/core/codegen/tests/ui-fail/catch_type_errors.stderr b/core/codegen/tests/ui-fail/catch_type_errors.stderr index 3fac7438..d6d6f23c 100644 --- a/core/codegen/tests/ui-fail/catch_type_errors.stderr +++ b/core/codegen/tests/ui-fail/catch_type_errors.stderr @@ -1,21 +1,39 @@ error[E0277]: the trait bound `usize: Responder<'_>` is not satisfied - --> $DIR/catch_type_errors.rs:6:30 + --> tests/ui-fail/catch_type_errors.rs:6:30 | 6 | fn f1(_request: &Request) -> usize { | ^^^^^ the trait `Responder<'_>` is not implemented for `usize` | - = note: required by `respond_to` + = help: the following other types implement trait `Responder<'r>`: + <&'r [u8] as Responder<'r>> + <&'r str as Responder<'r>> + <() as Responder<'r>> + as Responder<'r>> + > + as Responder<'r>> + as Responder<'r>> + as Responder<'r>> + and 26 others error[E0277]: the trait bound `bool: Responder<'_>` is not satisfied - --> $DIR/catch_type_errors.rs:12:30 + --> tests/ui-fail/catch_type_errors.rs:12:30 | 12 | fn f2(_request: &Request) -> bool { | ^^^^ the trait `Responder<'_>` is not implemented for `bool` | - = note: required by `respond_to` + = help: the following other types implement trait `Responder<'r>`: + <&'r [u8] as Responder<'r>> + <&'r str as Responder<'r>> + <() as Responder<'r>> + as Responder<'r>> + > + as Responder<'r>> + as Responder<'r>> + as Responder<'r>> + and 26 others error[E0308]: mismatched types - --> $DIR/catch_type_errors.rs:18:7 + --> tests/ui-fail/catch_type_errors.rs:18:7 | 17 | #[catch(404)] | ------------- expected due to this @@ -26,9 +44,18 @@ error[E0308]: mismatched types found fn item `fn(bool) -> usize {f3}` error[E0277]: the trait bound `usize: Responder<'_>` is not satisfied - --> $DIR/catch_type_errors.rs:24:12 + --> tests/ui-fail/catch_type_errors.rs:24:12 | 24 | fn f4() -> usize { | ^^^^^ the trait `Responder<'_>` is not implemented for `usize` | - = note: required by `respond_to` + = help: the following other types implement trait `Responder<'r>`: + <&'r [u8] as Responder<'r>> + <&'r str as Responder<'r>> + <() as Responder<'r>> + as Responder<'r>> + > + as Responder<'r>> + as Responder<'r>> + as Responder<'r>> + and 26 others diff --git a/core/codegen/tests/ui-fail/from_form_type_errors.stderr b/core/codegen/tests/ui-fail/from_form_type_errors.stderr index 469c8bf2..2c7938a2 100644 --- a/core/codegen/tests/ui-fail/from_form_type_errors.stderr +++ b/core/codegen/tests/ui-fail/from_form_type_errors.stderr @@ -1,15 +1,33 @@ error[E0277]: the trait bound `Unknown: FromFormValue<'_>` is not satisfied - --> $DIR/from_form_type_errors.rs:7:5 + --> tests/ui-fail/from_form_type_errors.rs:7:5 | 7 | field: Unknown, | ^^^^^^^^^^^^^^ the trait `FromFormValue<'_>` is not implemented for `Unknown` | - = note: required by `from_form_value` + = help: the following other types implement trait `FromFormValue<'v>`: + &'v RawStr + IpAddr + Ipv4Addr + Ipv6Addr + NonZeroI128 + NonZeroI16 + NonZeroI32 + NonZeroI64 + and 29 others error[E0277]: the trait bound `Foo: FromFormValue<'_>` is not satisfied - --> $DIR/from_form_type_errors.rs:15:5 + --> tests/ui-fail/from_form_type_errors.rs:15:5 | 15 | field: Foo, | ^^^^^^^^^^^^^^^^^ the trait `FromFormValue<'_>` is not implemented for `Foo` | - = note: required by `from_form_value` + = help: the following other types implement trait `FromFormValue<'v>`: + &'v RawStr + IpAddr + Ipv4Addr + Ipv6Addr + NonZeroI128 + NonZeroI16 + NonZeroI32 + NonZeroI64 + and 29 others diff --git a/core/codegen/tests/ui-fail/responder-types.stderr b/core/codegen/tests/ui-fail/responder-types.stderr index 52d8e7d1..95ba292e 100644 --- a/core/codegen/tests/ui-fail/responder-types.stderr +++ b/core/codegen/tests/ui-fail/responder-types.stderr @@ -1,68 +1,124 @@ error[E0277]: the trait bound `u8: Responder<'_>` is not satisfied - --> $DIR/responder-types.rs:11:5 + --> tests/ui-fail/responder-types.rs:11:5 | 11 | thing: u8, | ^^^^^^^^^ the trait `Responder<'_>` is not implemented for `u8` | - = note: required by `respond_to` + = help: the following other types implement trait `Responder<'r>`: + <&'r [u8] as Responder<'r>> + <&'r str as Responder<'r>> + <() as Responder<'r>> + as Responder<'r>> + > + as Responder<'r>> + as Responder<'r>> + as Responder<'r>> + and 30 others error[E0277]: the trait bound `rocket::http::Header<'_>: std::convert::From` is not satisfied - --> $DIR/responder-types.rs:18:5 - | -18 | other: u8, - | ^^^^^^^^^ the trait `std::convert::From` is not implemented for `rocket::http::Header<'_>` - | - = help: the following implementations were found: - as std::convert::From<&'a Cookie<'c>>> - as std::convert::From> - as std::convert::From> - as std::convert::From> - and 43 others - = note: required because of the requirements on the impl of `Into>` for `u8` + --> tests/ui-fail/responder-types.rs:18:5 + | +18 | other: u8, + | ^^^^^^^^^ the trait `std::convert::From` is not implemented for `rocket::http::Header<'_>` + | + = help: the following other types implement trait `std::convert::From`: + as std::convert::From<&'a Cookie<'c>>> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + and 39 others + = note: required because of the requirements on the impl of `Into>` for `u8` +note: required by a bound in `rocket::Response::<'r>::set_header` + --> $WORKSPACE/core/lib/src/response/response.rs + | + | pub fn set_header<'h: 'r, H: Into>>(&mut self, header: H) -> bool { + | ^^^^^^^^^^^^^^^^ required by this bound in `rocket::Response::<'r>::set_header` error[E0277]: the trait bound `u8: Responder<'_>` is not satisfied - --> $DIR/responder-types.rs:24:5 + --> tests/ui-fail/responder-types.rs:24:5 | 24 | thing: u8, | ^^^^^^^^^ the trait `Responder<'_>` is not implemented for `u8` | - = note: required by `respond_to` + = help: the following other types implement trait `Responder<'r>`: + <&'r [u8] as Responder<'r>> + <&'r str as Responder<'r>> + <() as Responder<'r>> + as Responder<'r>> + > + as Responder<'r>> + as Responder<'r>> + as Responder<'r>> + and 30 others error[E0277]: the trait bound `rocket::http::Header<'_>: std::convert::From` is not satisfied - --> $DIR/responder-types.rs:26:5 - | -26 | other: u8, - | ^^^^^^^^^ the trait `std::convert::From` is not implemented for `rocket::http::Header<'_>` - | - = help: the following implementations were found: - as std::convert::From<&'a Cookie<'c>>> - as std::convert::From> - as std::convert::From> - as std::convert::From> - and 43 others - = note: required because of the requirements on the impl of `Into>` for `u8` + --> tests/ui-fail/responder-types.rs:26:5 + | +26 | other: u8, + | ^^^^^^^^^ the trait `std::convert::From` is not implemented for `rocket::http::Header<'_>` + | + = help: the following other types implement trait `std::convert::From`: + as std::convert::From<&'a Cookie<'c>>> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + and 39 others + = note: required because of the requirements on the impl of `Into>` for `u8` +note: required by a bound in `rocket::Response::<'r>::set_header` + --> $WORKSPACE/core/lib/src/response/response.rs + | + | pub fn set_header<'h: 'r, H: Into>>(&mut self, header: H) -> bool { + | ^^^^^^^^^^^^^^^^ required by this bound in `rocket::Response::<'r>::set_header` error[E0277]: the trait bound `rocket::http::Header<'_>: std::convert::From` is not satisfied - --> $DIR/responder-types.rs:34:5 - | -34 | then: String, - | ^^^^^^^^^^^^ the trait `std::convert::From` is not implemented for `rocket::http::Header<'_>` - | - = help: the following implementations were found: - as std::convert::From<&'a Cookie<'c>>> - as std::convert::From> - as std::convert::From> - as std::convert::From> - and 43 others - = note: required because of the requirements on the impl of `Into>` for `std::string::String` + --> tests/ui-fail/responder-types.rs:34:5 + | +34 | then: String, + | ^^^^^^^^^^^^ the trait `std::convert::From` is not implemented for `rocket::http::Header<'_>` + | + = help: the following other types implement trait `std::convert::From`: + as std::convert::From<&'a Cookie<'c>>> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + as std::convert::From> + and 39 others + = note: required because of the requirements on the impl of `Into>` for `std::string::String` +note: required by a bound in `rocket::Response::<'r>::set_header` + --> $WORKSPACE/core/lib/src/response/response.rs + | + | pub fn set_header<'h: 'r, H: Into>>(&mut self, header: H) -> bool { + | ^^^^^^^^^^^^^^^^ required by this bound in `rocket::Response::<'r>::set_header` error[E0277]: the trait bound `usize: Responder<'_>` is not satisfied - --> $DIR/responder-types.rs:39:13 + --> tests/ui-fail/responder-types.rs:39:13 | 39 | fn foo() -> usize { 0 } | ^^^^^ the trait `Responder<'_>` is not implemented for `usize` | - ::: $WORKSPACE/core/lib/src/handler.rs + = help: the following other types implement trait `Responder<'r>`: + <&'r [u8] as Responder<'r>> + <&'r str as Responder<'r>> + <() as Responder<'r>> + as Responder<'r>> + > + as Responder<'r>> + as Responder<'r>> + as Responder<'r>> + and 30 others +note: required by a bound in `handler::, rocket::http::Status, rocket::Data>>::from` + --> $WORKSPACE/core/lib/src/handler.rs | | pub fn from>(req: &Request, responder: T) -> Outcome<'r> { - | ------------- required by this bound in `handler::, rocket::http::Status, rocket::Data>>::from` + | ^^^^^^^^^^^^^ required by this bound in `handler::, rocket::http::Status, rocket::Data>>::from` diff --git a/core/codegen/tests/ui-fail/route-type-errors.stderr b/core/codegen/tests/ui-fail/route-type-errors.stderr index 5369630b..1a153cb2 100644 --- a/core/codegen/tests/ui-fail/route-type-errors.stderr +++ b/core/codegen/tests/ui-fail/route-type-errors.stderr @@ -1,79 +1,153 @@ error[E0277]: the trait bound `Q: FromParam<'_>` is not satisfied - --> $DIR/route-type-errors.rs:8:7 + --> tests/ui-fail/route-type-errors.rs:8:7 | 8 | fn f0(foo: Q) {} //~ ERROR FromParam | ^^^^^^ the trait `FromParam<'_>` is not implemented for `Q` | - = note: required by `from_param` + = help: the following other types implement trait `FromParam<'a>`: + &'a RawStr + Cow<'a, str> + IpAddr + Ipv4Addr + Ipv6Addr + NonZeroI128 + NonZeroI16 + NonZeroI32 + and 30 others error[E0277]: the trait bound `Q: FromSegments<'_>` is not satisfied - --> $DIR/route-type-errors.rs:11:7 + --> tests/ui-fail/route-type-errors.rs:11:7 | 11 | fn f1(foo: Q) {} //~ ERROR FromSegments | ^^^^^^ the trait `FromSegments<'_>` is not implemented for `Q` | - = note: required by `from_segments` + = help: the following other types implement trait `FromSegments<'a>`: + Option + PathBuf + Result>::Error> + Segments<'a> error[E0277]: the trait bound `Q: FromFormValue<'_>` is not satisfied - --> $DIR/route-type-errors.rs:14:7 + --> tests/ui-fail/route-type-errors.rs:14:7 | 14 | fn f2(foo: Q) {} //~ ERROR FromFormValue | ^^^^^^ the trait `FromFormValue<'_>` is not implemented for `Q` | - = note: required by `from_form_value` + = help: the following other types implement trait `FromFormValue<'v>`: + &'v RawStr + IpAddr + Ipv4Addr + Ipv6Addr + NonZeroI128 + NonZeroI16 + NonZeroI32 + NonZeroI64 + and 29 others error[E0277]: the trait bound `Q: FromQuery<'_>` is not satisfied - --> $DIR/route-type-errors.rs:17:7 + --> tests/ui-fail/route-type-errors.rs:17:7 | 17 | fn f3(foo: Q) {} //~ ERROR FromQuery | ^^^^^^ the trait `FromQuery<'_>` is not implemented for `Q` | - = note: required by `from_query` + = help: the following other types implement trait `FromQuery<'q>`: + Form + LenientForm + Option + Result>::Error> error[E0277]: the trait bound `Q: FromDataSimple` is not satisfied - --> $DIR/route-type-errors.rs:20:7 + --> tests/ui-fail/route-type-errors.rs:20:7 | 20 | fn f4(foo: Q) {} //~ ERROR FromData | ^^^^^^ the trait `FromDataSimple` is not implemented for `Q` | + = help: the following other types implement trait `FromDataSimple`: + Vec + std::string::String = note: required because of the requirements on the impl of `FromData<'_>` for `Q` error[E0277]: the trait bound `Q: FromRequest<'_, '_>` is not satisfied - --> $DIR/route-type-errors.rs:23:7 + --> tests/ui-fail/route-type-errors.rs:23:7 | 23 | fn f5(a: Q, foo: Q) {} | ^^^^ the trait `FromRequest<'_, '_>` is not implemented for `Q` | - = note: required by `from_request` + = help: the following other types implement trait `FromRequest<'a, 'r>`: + &'a rocket::http::Accept + &'a rocket::http::ContentType + &'a rocket::http::uri::Origin<'a> + &'r Route + Cookies<'a> + Flash<&'a rocket::Request<'r>> + Option + Result>::Error> + and 3 others error[E0277]: the trait bound `Q: FromParam<'_>` is not satisfied - --> $DIR/route-type-errors.rs:23:13 + --> tests/ui-fail/route-type-errors.rs:23:13 | 23 | fn f5(a: Q, foo: Q) {} | ^^^^^^ the trait `FromParam<'_>` is not implemented for `Q` | - = note: required by `from_param` + = help: the following other types implement trait `FromParam<'a>`: + &'a RawStr + Cow<'a, str> + IpAddr + Ipv4Addr + Ipv6Addr + NonZeroI128 + NonZeroI16 + NonZeroI32 + and 30 others error[E0277]: the trait bound `Q: FromRequest<'_, '_>` is not satisfied - --> $DIR/route-type-errors.rs:28:7 + --> tests/ui-fail/route-type-errors.rs:28:7 | 28 | fn f6(a: Q, foo: Q, good: usize, bar: Q) {} | ^^^^ the trait `FromRequest<'_, '_>` is not implemented for `Q` | - = note: required by `from_request` + = help: the following other types implement trait `FromRequest<'a, 'r>`: + &'a rocket::http::Accept + &'a rocket::http::ContentType + &'a rocket::http::uri::Origin<'a> + &'r Route + Cookies<'a> + Flash<&'a rocket::Request<'r>> + Option + Result>::Error> + and 3 others error[E0277]: the trait bound `Q: FromParam<'_>` is not satisfied - --> $DIR/route-type-errors.rs:28:13 + --> tests/ui-fail/route-type-errors.rs:28:13 | 28 | fn f6(a: Q, foo: Q, good: usize, bar: Q) {} | ^^^^^^ the trait `FromParam<'_>` is not implemented for `Q` | - = note: required by `from_param` + = help: the following other types implement trait `FromParam<'a>`: + &'a RawStr + Cow<'a, str> + IpAddr + Ipv4Addr + Ipv6Addr + NonZeroI128 + NonZeroI16 + NonZeroI32 + and 30 others error[E0277]: the trait bound `Q: FromParam<'_>` is not satisfied - --> $DIR/route-type-errors.rs:28:34 + --> tests/ui-fail/route-type-errors.rs:28:34 | 28 | fn f6(a: Q, foo: Q, good: usize, bar: Q) {} | ^^^^^^ the trait `FromParam<'_>` is not implemented for `Q` | - = note: required by `from_param` + = help: the following other types implement trait `FromParam<'a>`: + &'a RawStr + Cow<'a, str> + IpAddr + Ipv4Addr + Ipv6Addr + NonZeroI128 + NonZeroI16 + NonZeroI32 + and 30 others diff --git a/core/codegen/tests/ui-fail/typed-uri-bad-type.stderr b/core/codegen/tests/ui-fail/typed-uri-bad-type.stderr index 4a2b3493..5e96017d 100644 --- a/core/codegen/tests/ui-fail/typed-uri-bad-type.stderr +++ b/core/codegen/tests/ui-fail/typed-uri-bad-type.stderr @@ -1,151 +1,226 @@ error[E0277]: the trait bound `usize: FromUriParam` is not satisfied - --> $DIR/typed-uri-bad-type.rs:50:23 + --> tests/ui-fail/typed-uri-bad-type.rs:50:23 | 50 | uri!(simple: id = "hi"); | ^^^^ the trait `FromUriParam` is not implemented for `usize` | - = help: the following implementations were found: - > - > - > - = note: required by `from_uri_param` + = help: the following other types implement trait `FromUriParam`: + > + > + > + > + > + > + > + > + and 34 others error[E0277]: the trait bound `usize: FromUriParam` is not satisfied - --> $DIR/typed-uri-bad-type.rs:53:18 + --> tests/ui-fail/typed-uri-bad-type.rs:53:18 | 53 | uri!(simple: "hello"); | ^^^^^^^ the trait `FromUriParam` is not implemented for `usize` | - = help: the following implementations were found: - > - > - > - = note: required by `from_uri_param` + = help: the following other types implement trait `FromUriParam`: + > + > + > + > + > + > + > + > + and 34 others error[E0277]: the trait bound `usize: FromUriParam` is not satisfied - --> $DIR/typed-uri-bad-type.rs:56:23 + --> tests/ui-fail/typed-uri-bad-type.rs:56:23 | 56 | uri!(simple: id = 239239i64); | ^^^^^^^^^ the trait `FromUriParam` is not implemented for `usize` | - = help: the following implementations were found: - > - > - > - = note: required by `from_uri_param` + = help: the following other types implement trait `FromUriParam`: + > + > + > + > + > + > + > + > + and 34 others error[E0277]: the trait bound `S: FromUriParam` is not satisfied - --> $DIR/typed-uri-bad-type.rs:59:31 + --> tests/ui-fail/typed-uri-bad-type.rs:59:31 | 59 | uri!(not_uri_display: 10, S); | ^ the trait `FromUriParam` is not implemented for `S` | - = note: required by `from_uri_param` + = help: the following other types implement trait `FromUriParam`: + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a std::path::Path as FromUriParam> + <&'a std::path::Path as FromUriParam> + and 88 others error[E0277]: the trait bound `i32: FromUriParam>` is not satisfied - --> $DIR/typed-uri-bad-type.rs:65:26 + --> tests/ui-fail/typed-uri-bad-type.rs:65:26 | 65 | uri!(optionals: id = Some(10), name = Ok("bob".into())); | ^^^^ the trait `FromUriParam>` is not implemented for `i32` | - = help: the following implementations were found: - > - > - > + = help: the following other types implement trait `FromUriParam`: + > + > + > + > + > + > + > + > + and 34 others = note: required because of the requirements on the impl of `FromUriParam>` for `Option` - = note: required by `from_uri_param` error[E0277]: the trait bound `std::string::String: FromUriParam>` is not satisfied - --> $DIR/typed-uri-bad-type.rs:65:43 + --> tests/ui-fail/typed-uri-bad-type.rs:65:43 | 65 | uri!(optionals: id = Some(10), name = Ok("bob".into())); | ^^ the trait `FromUriParam>` is not implemented for `std::string::String` | - = help: the following implementations were found: + = help: the following other types implement trait `FromUriParam`: + <&'a str as FromUriParam> + <&'a str as FromUriParam> + <&'a str as FromUriParam> + <&'a str as FromUriParam> + <&'a str as FromUriParam> + <&'a str as FromUriParam> > > - > - > - and 2 others + and 4 others = note: required because of the requirements on the impl of `FromUriParam>` for `Result` - = note: required by `from_uri_param` error[E0277]: the trait bound `isize: FromUriParam` is not satisfied - --> $DIR/typed-uri-bad-type.rs:69:20 + --> tests/ui-fail/typed-uri-bad-type.rs:69:20 | 69 | uri!(simple_q: "hi"); | ^^^^ the trait `FromUriParam` is not implemented for `isize` | - = help: the following implementations were found: - > - > - > - = note: required by `from_uri_param` + = help: the following other types implement trait `FromUriParam`: + > + > + > + > + > + > + > + > + and 34 others error[E0277]: the trait bound `isize: FromUriParam` is not satisfied - --> $DIR/typed-uri-bad-type.rs:72:25 + --> tests/ui-fail/typed-uri-bad-type.rs:72:25 | 72 | uri!(simple_q: id = "hi"); | ^^^^ the trait `FromUriParam` is not implemented for `isize` | - = help: the following implementations were found: - > - > - > - = note: required by `from_uri_param` + = help: the following other types implement trait `FromUriParam`: + > + > + > + > + > + > + > + > + and 34 others error[E0277]: the trait bound `S: FromUriParam` is not satisfied - --> $DIR/typed-uri-bad-type.rs:75:24 + --> tests/ui-fail/typed-uri-bad-type.rs:75:24 | 75 | uri!(other_q: 100, S); | ^ the trait `FromUriParam` is not implemented for `S` | - = note: required by `from_uri_param` + = help: the following other types implement trait `FromUriParam`: + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a std::path::Path as FromUriParam> + <&'a std::path::Path as FromUriParam> + and 88 others error[E0277]: the trait bound `S: FromUriParam` is not satisfied - --> $DIR/typed-uri-bad-type.rs:78:26 + --> tests/ui-fail/typed-uri-bad-type.rs:78:26 | 78 | uri!(other_q: rest = S, id = 100); | ^ the trait `FromUriParam` is not implemented for `S` | - = note: required by `from_uri_param` + = help: the following other types implement trait `FromUriParam`: + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a std::path::Path as FromUriParam> + <&'a std::path::Path as FromUriParam> + and 88 others error[E0277]: the trait bound `S: Ignorable` is not satisfied - --> $DIR/typed-uri-bad-type.rs:42:29 + --> tests/ui-fail/typed-uri-bad-type.rs:42:29 | 42 | fn other_q(id: usize, rest: S) { } | ^ the trait `Ignorable` is not implemented for `S` ... 81 | uri!(other_q: rest = _, id = 100); - | ---------------------------------- in this macro invocation + | --------------------------------- in this macro invocation | - ::: $WORKSPACE/core/http/src/uri/uri_display.rs + = help: the following other types implement trait `Ignorable

`: + Option + Result +note: required by a bound in `assert_ignorable` + --> $WORKSPACE/core/http/src/uri/uri_display.rs | | pub fn assert_ignorable>() { } - | ------------ required by this bound in `assert_ignorable` - | + | ^^^^^^^^^^^^ required by this bound in `assert_ignorable` = note: this error originates in the macro `rocket_uri_macro_other_q` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `usize: Ignorable` is not satisfied - --> $DIR/typed-uri-bad-type.rs:42:16 + --> tests/ui-fail/typed-uri-bad-type.rs:42:16 | 42 | fn other_q(id: usize, rest: S) { } | ^^^^^ the trait `Ignorable` is not implemented for `usize` ... 83 | uri!(other_q: rest = S, id = _); - | -------------------------------- in this macro invocation + | ------------------------------- in this macro invocation | - ::: $WORKSPACE/core/http/src/uri/uri_display.rs + = help: the following other types implement trait `Ignorable

`: + Option + Result +note: required by a bound in `assert_ignorable` + --> $WORKSPACE/core/http/src/uri/uri_display.rs | | pub fn assert_ignorable>() { } - | ------------ required by this bound in `assert_ignorable` - | + | ^^^^^^^^^^^^ required by this bound in `assert_ignorable` = note: this error originates in the macro `rocket_uri_macro_other_q` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `S: FromUriParam` is not satisfied - --> $DIR/typed-uri-bad-type.rs:83:26 + --> tests/ui-fail/typed-uri-bad-type.rs:83:26 | 83 | uri!(other_q: rest = S, id = _); | ^ the trait `FromUriParam` is not implemented for `S` | - = note: required by `from_uri_param` + = help: the following other types implement trait `FromUriParam`: + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a RawStr as FromUriParam> + <&'a std::path::Path as FromUriParam> + <&'a std::path::Path as FromUriParam> + and 88 others diff --git a/core/codegen/tests/ui-fail/typed-uris-invalid-syntax.stderr b/core/codegen/tests/ui-fail/typed-uris-invalid-syntax.stderr index 04084377..1ec26403 100644 --- a/core/codegen/tests/ui-fail/typed-uris-invalid-syntax.stderr +++ b/core/codegen/tests/ui-fail/typed-uris-invalid-syntax.stderr @@ -1,65 +1,65 @@ error: named and unnamed parameters cannot be mixed - --> $DIR/typed-uris-invalid-syntax.rs:9:18 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:9:18 | 9 | uri!(simple: id = 100, "Hello"); //~ ERROR named and unnamed | ^^^^^^^^^^^^^^^^^ error: named and unnamed parameters cannot be mixed - --> $DIR/typed-uris-invalid-syntax.rs:10:18 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:10:18 | 10 | uri!(simple: "Hello", id = 100); //~ ERROR named and unnamed | ^^^^^^^^^^^^^^^^^ error: expected `:` - --> $DIR/typed-uris-invalid-syntax.rs:11:16 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:11:16 | 11 | uri!(simple,); //~ ERROR expected `:` | ^ error: expected argument list after `:` - --> $DIR/typed-uris-invalid-syntax.rs:12:16 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:12:16 | 12 | uri!(simple:); //~ ERROR argument list | ^ error: unexpected end of input: expected ',' followed by route path - --> $DIR/typed-uris-invalid-syntax.rs:13:10 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:13:10 | 13 | uri!("/mount"); //~ ERROR route path | ^^^^^^^^ error: unexpected end of input, expected identifier - --> $DIR/typed-uris-invalid-syntax.rs:14:5 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:14:5 | 14 | uri!("/mount",); //~ ERROR expected identifier - | ^^^^^^^^^^^^^^^^ + | ^^^^^^^^^^^^^^^ | = note: this error originates in the macro `uri` (in Nightly builds, run with -Z macro-backtrace for more info) error: invalid mount point; mount points must be static, absolute URIs: `/example` - --> $DIR/typed-uris-invalid-syntax.rs:15:10 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:15:10 | 15 | uri!("mount", simple); //~ invalid mount point | ^^^^^^^ error: invalid mount point; mount points must be static, absolute URIs: `/example` - --> $DIR/typed-uris-invalid-syntax.rs:16:10 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:16:10 | 16 | uri!("/mount/", simple); //~ invalid mount point | ^^^^^^^^^^^^^ error: unexpected end of input, call to `uri!` cannot be empty - --> $DIR/typed-uris-invalid-syntax.rs:17:5 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:17:5 | 17 | uri!(); //~ unexpected end of input - | ^^^^^^^ + | ^^^^^^ | = note: this error originates in the macro `uri` (in Nightly builds, run with -Z macro-backtrace for more info) error: unexpected end of input, expected expression - --> $DIR/typed-uris-invalid-syntax.rs:18:5 + --> tests/ui-fail/typed-uris-invalid-syntax.rs:18:5 | 18 | uri!(simple: id = ); //~ expected expression - | ^^^^^^^^^^^^^^^^^^^^ + | ^^^^^^^^^^^^^^^^^^^ | = note: this error originates in the macro `uri` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/core/codegen/tests/ui-fail/uri_display.stderr b/core/codegen/tests/ui-fail/uri_display.stderr index e50683bd..327c520b 100644 --- a/core/codegen/tests/ui-fail/uri_display.stderr +++ b/core/codegen/tests/ui-fail/uri_display.stderr @@ -1,122 +1,122 @@ error: fieldless structs or variants are not supported - --> $DIR/uri_display.rs:9:1 + --> tests/ui-fail/uri_display.rs:9:1 | 9 | struct Foo1; | ^^^^^^^^^^^^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:5:10 + --> tests/ui-fail/uri_display.rs:5:10 | 5 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error: fieldless structs or variants are not supported - --> $DIR/uri_display.rs:16:1 + --> tests/ui-fail/uri_display.rs:16:1 | 16 | struct Foo2(); | ^^^^^^^^^^^^^^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:12:10 + --> tests/ui-fail/uri_display.rs:12:10 | 12 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error: empty enums are not supported - --> $DIR/uri_display.rs:23:1 + --> tests/ui-fail/uri_display.rs:23:1 | 23 | enum Foo3 { } | ^^^^^^^^^^^^^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:19:10 + --> tests/ui-fail/uri_display.rs:19:10 | 19 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error: fieldless structs or variants are not supported - --> $DIR/uri_display.rs:31:5 + --> tests/ui-fail/uri_display.rs:31:5 | 31 | Variant, | ^^^^^^^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:26:10 + --> tests/ui-fail/uri_display.rs:26:10 | 26 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error: tuple structs or variants must have exactly one field - --> $DIR/uri_display.rs:39:12 + --> tests/ui-fail/uri_display.rs:39:12 | 39 | struct Foo5(String, String); | ^^^^^^^^^^^^^^^^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:35:10 + --> tests/ui-fail/uri_display.rs:35:10 | 35 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error: invalid value: expected string literal - --> $DIR/uri_display.rs:47:20 + --> tests/ui-fail/uri_display.rs:47:20 | 47 | #[form(field = 123)] | ^^^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:42:10 + --> tests/ui-fail/uri_display.rs:42:10 | 42 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error: struct must have exactly one field - --> $DIR/uri_display.rs:55:12 + --> tests/ui-fail/uri_display.rs:55:12 | 55 | struct Foo7(String, usize); | ^^^^^^^^^^^^^^^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:52:10 + --> tests/ui-fail/uri_display.rs:52:10 | 52 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error: struct must have exactly one field - --> $DIR/uri_display.rs:61:1 + --> tests/ui-fail/uri_display.rs:61:1 | 61 | struct Foo8; | ^^^^^^^^^^^^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:58:10 + --> tests/ui-fail/uri_display.rs:58:10 | 58 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error: enums are not supported - --> $DIR/uri_display.rs:67:1 + --> tests/ui-fail/uri_display.rs:67:1 | 67 | enum Foo9 { } | ^^^^^^^^^^^^^^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:64:10 + --> tests/ui-fail/uri_display.rs:64:10 | 64 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error: named structs are not supported - --> $DIR/uri_display.rs:73:1 + --> tests/ui-fail/uri_display.rs:73:1 | 73 | / struct Foo10 { 74 | | //~^ ERROR not supported @@ -125,362 +125,622 @@ error: named structs are not supported | |_^ | note: error occurred while deriving `UriDisplay` - --> $DIR/uri_display.rs:70:10 + --> tests/ui-fail/uri_display.rs:70:10 | 70 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo1: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:5:10 + --> tests/ui-fail/uri_display.rs:5:10 | 5 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo1` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo1: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:5:10 + --> tests/ui-fail/uri_display.rs:5:10 | 5 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo1` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo1` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo1: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:5:10 + --> tests/ui-fail/uri_display.rs:5:10 | 5 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo1` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r mut Foo1` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo2: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:12:10 + --> tests/ui-fail/uri_display.rs:12:10 | 12 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo2` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo2: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:12:10 + --> tests/ui-fail/uri_display.rs:12:10 | 12 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo2` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo2` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo2: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:12:10 + --> tests/ui-fail/uri_display.rs:12:10 | 12 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo2` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r mut Foo2` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo3: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:19:10 + --> tests/ui-fail/uri_display.rs:19:10 | 19 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo3` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo3: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:19:10 + --> tests/ui-fail/uri_display.rs:19:10 | 19 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo3` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo3` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo3: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:19:10 + --> tests/ui-fail/uri_display.rs:19:10 | 19 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo3` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r mut Foo3` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo4: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:26:10 + --> tests/ui-fail/uri_display.rs:26:10 | 26 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo4` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo4: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:26:10 + --> tests/ui-fail/uri_display.rs:26:10 | 26 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo4` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo4` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo4: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:26:10 + --> tests/ui-fail/uri_display.rs:26:10 | 26 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo4` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r mut Foo4` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo5: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:35:10 + --> tests/ui-fail/uri_display.rs:35:10 | 35 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo5` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo5: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:35:10 + --> tests/ui-fail/uri_display.rs:35:10 | 35 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo5` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo5` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo5: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:35:10 + --> tests/ui-fail/uri_display.rs:35:10 | 35 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo5` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r mut Foo5` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo6: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:42:10 + --> tests/ui-fail/uri_display.rs:42:10 | 42 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo6` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo6: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:42:10 + --> tests/ui-fail/uri_display.rs:42:10 | 42 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo6` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo6` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo6: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:42:10 + --> tests/ui-fail/uri_display.rs:42:10 | 42 | #[derive(UriDisplayQuery)] | ^^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo6` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others + = note: required because of the requirements on the impl of `UriDisplay` for `&'__r mut Foo6` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | - = note: required because of the requirements on the impl of `UriDisplay` for `&'__r mut Foo6` + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayQuery` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo7: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:52:10 + --> tests/ui-fail/uri_display.rs:52:10 | 52 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo7` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo7: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:52:10 + --> tests/ui-fail/uri_display.rs:52:10 | 52 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo7` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo7` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo8: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:58:10 + --> tests/ui-fail/uri_display.rs:58:10 | 58 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo8` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo8: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:58:10 + --> tests/ui-fail/uri_display.rs:58:10 | 58 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo8` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo8` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo9: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:64:10 + --> tests/ui-fail/uri_display.rs:64:10 | 64 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo9` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo9: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:64:10 + --> tests/ui-fail/uri_display.rs:64:10 | 64 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo9` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo9` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo10: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:70:10 + --> tests/ui-fail/uri_display.rs:70:10 | 70 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo10` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs | | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Foo10: UriDisplay` is not satisfied - --> $DIR/uri_display.rs:70:10 + --> tests/ui-fail/uri_display.rs:70:10 | 70 | #[derive(UriDisplayPath)] | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `Foo10` | - ::: $WORKSPACE/core/http/src/uri/from_uri_param.rs - | - | type Target: UriDisplay

; - | ------------- required by this bound in `rocket::http::uri::FromUriParam::Target` - | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + as UriDisplay

> + > + > + > + as UriDisplay> + > + and 20 others = note: required because of the requirements on the impl of `UriDisplay` for `&'__r Foo10` +note: required by a bound in `rocket::http::uri::FromUriParam::Target` + --> $WORKSPACE/core/http/src/uri/from_uri_param.rs + | + | type Target: UriDisplay

; + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::FromUriParam::Target` = note: this error originates in the derive macro `UriDisplayPath` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/core/codegen/tests/ui-fail/uri_display_type_errors.stderr b/core/codegen/tests/ui-fail/uri_display_type_errors.stderr index 244b0c43..d5d0143c 100644 --- a/core/codegen/tests/ui-fail/uri_display_type_errors.stderr +++ b/core/codegen/tests/ui-fail/uri_display_type_errors.stderr @@ -1,61 +1,166 @@ error[E0277]: the trait bound `BadType: UriDisplay` is not satisfied - --> $DIR/uri_display_type_errors.rs:6:13 - | -6 | struct Bar1(BadType); - | ^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` - | - = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` + --> tests/ui-fail/uri_display_type_errors.rs:6:13 + | +6 | struct Bar1(BadType); + | ^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` + | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + > + > + > + > + > + > + and 27 others + = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` +note: required by a bound in `rocket::http::uri::Formatter::<'i, P>::write_value` + --> $WORKSPACE/core/http/src/uri/formatter.rs + | + | pub fn write_value>(&mut self, value: T) -> fmt::Result { + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::Formatter::<'i, P>::write_value` error[E0277]: the trait bound `BadType: UriDisplay` is not satisfied - --> $DIR/uri_display_type_errors.rs:11:5 - | -11 | field: BadType, - | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` - | - = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` + --> tests/ui-fail/uri_display_type_errors.rs:11:5 + | +11 | field: BadType, + | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` + | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + > + > + > + > + > + > + and 27 others + = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` +note: required by a bound in `rocket::http::uri::Formatter::<'i, rocket::http::uri::Query>::write_named_value` + --> $WORKSPACE/core/http/src/uri/formatter.rs + | + | pub fn write_named_value>(&mut self, name: &str, value: T) -> fmt::Result { + | ^^^^^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::Formatter::<'i, rocket::http::uri::Query>::write_named_value` error[E0277]: the trait bound `BadType: UriDisplay` is not satisfied - --> $DIR/uri_display_type_errors.rs:18:5 - | -18 | bad: BadType, - | ^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` - | - = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` + --> tests/ui-fail/uri_display_type_errors.rs:18:5 + | +18 | bad: BadType, + | ^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` + | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + > + > + > + > + > + > + and 27 others + = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` +note: required by a bound in `rocket::http::uri::Formatter::<'i, rocket::http::uri::Query>::write_named_value` + --> $WORKSPACE/core/http/src/uri/formatter.rs + | + | pub fn write_named_value>(&mut self, name: &str, value: T) -> fmt::Result { + | ^^^^^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::Formatter::<'i, rocket::http::uri::Query>::write_named_value` error[E0277]: the trait bound `BadType: UriDisplay` is not satisfied - --> $DIR/uri_display_type_errors.rs:24:11 - | -24 | Inner(BadType), - | ^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` - | - = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` - = note: 1 redundant requirements hidden - = note: required because of the requirements on the impl of `UriDisplay` for `&&BadType` + --> tests/ui-fail/uri_display_type_errors.rs:24:11 + | +24 | Inner(BadType), + | ^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` + | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + > + > + > + > + > + > + and 27 others + = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` + = note: 1 redundant requirement hidden + = note: required because of the requirements on the impl of `UriDisplay` for `&&BadType` +note: required by a bound in `rocket::http::uri::Formatter::<'i, P>::write_value` + --> $WORKSPACE/core/http/src/uri/formatter.rs + | + | pub fn write_value>(&mut self, value: T) -> fmt::Result { + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::Formatter::<'i, P>::write_value` error[E0277]: the trait bound `BadType: UriDisplay` is not satisfied - --> $DIR/uri_display_type_errors.rs:31:9 - | -31 | field: BadType, - | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` - | - = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` - = note: 1 redundant requirements hidden - = note: required because of the requirements on the impl of `UriDisplay` for `&&BadType` + --> tests/ui-fail/uri_display_type_errors.rs:31:9 + | +31 | field: BadType, + | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` + | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + > + > + > + > + > + > + and 27 others + = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` + = note: 1 redundant requirement hidden + = note: required because of the requirements on the impl of `UriDisplay` for `&&BadType` +note: required by a bound in `rocket::http::uri::Formatter::<'i, rocket::http::uri::Query>::write_named_value` + --> $WORKSPACE/core/http/src/uri/formatter.rs + | + | pub fn write_named_value>(&mut self, name: &str, value: T) -> fmt::Result { + | ^^^^^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::Formatter::<'i, rocket::http::uri::Query>::write_named_value` error[E0277]: the trait bound `BadType: UriDisplay` is not satisfied - --> $DIR/uri_display_type_errors.rs:40:9 - | -40 | other: BadType, - | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` - | - = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` - = note: 1 redundant requirements hidden - = note: required because of the requirements on the impl of `UriDisplay` for `&&BadType` + --> tests/ui-fail/uri_display_type_errors.rs:40:9 + | +40 | other: BadType, + | ^^^^^^^^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` + | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + > + > + > + > + > + > + and 27 others + = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` + = note: 1 redundant requirement hidden + = note: required because of the requirements on the impl of `UriDisplay` for `&&BadType` +note: required by a bound in `rocket::http::uri::Formatter::<'i, rocket::http::uri::Query>::write_named_value` + --> $WORKSPACE/core/http/src/uri/formatter.rs + | + | pub fn write_named_value>(&mut self, name: &str, value: T) -> fmt::Result { + | ^^^^^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::Formatter::<'i, rocket::http::uri::Query>::write_named_value` error[E0277]: the trait bound `BadType: UriDisplay` is not satisfied - --> $DIR/uri_display_type_errors.rs:46:12 - | -46 | struct Baz(BadType); - | ^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` - | - = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` + --> tests/ui-fail/uri_display_type_errors.rs:46:12 + | +46 | struct Baz(BadType); + | ^^^^^^^ the trait `UriDisplay` is not implemented for `BadType` + | + = help: the following other types implement trait `UriDisplay

`: + <&'a T as UriDisplay

> + <&'a mut T as UriDisplay

> + > + > + > + > + > + > + and 27 others + = note: required because of the requirements on the impl of `UriDisplay` for `&BadType` +note: required by a bound in `rocket::http::uri::Formatter::<'i, P>::write_value` + --> $WORKSPACE/core/http/src/uri/formatter.rs + | + | pub fn write_value>(&mut self, value: T) -> fmt::Result { + | ^^^^^^^^^^^^^ required by this bound in `rocket::http::uri::Formatter::<'i, P>::write_value`