[INFO] fetching crate rene 0.1.0... [INFO] checking rene-0.1.0 against master#506512391b1a75ae450d36c9420978402a91abcc for pr-125384 [INFO] extracting crate rene 0.1.0 into /workspace/builds/worker-3-tc1/source [INFO] validating manifest of crates.io crate rene 0.1.0 on toolchain 506512391b1a75ae450d36c9420978402a91abcc [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+506512391b1a75ae450d36c9420978402a91abcc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-3-tc1/source/rust-toolchain.toml [INFO] started tweaking crates.io crate rene 0.1.0 [INFO] finished tweaking crates.io crate rene 0.1.0 [INFO] tweaked toml for crates.io crate rene 0.1.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+506512391b1a75ae450d36c9420978402a91abcc" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 36 packages to latest compatible versions [INFO] [stderr] Adding indoc v1.0.9 (latest: v2.0.5) [INFO] [stderr] Adding pyo3 v0.19.2 (latest: v0.21.2) [INFO] [stderr] Adding pyo3-build-config v0.19.2 (latest: v0.21.2) [INFO] [stderr] Adding pyo3-ffi v0.19.2 (latest: v0.21.2) [INFO] [stderr] Adding pyo3-macros v0.19.2 (latest: v0.21.2) [INFO] [stderr] Adding pyo3-macros-backend v0.19.2 (latest: v0.21.2) [INFO] [stderr] Adding rithm v14.0.0 (latest: v14.1.0) [INFO] [stderr] Adding syn v1.0.109 (latest: v2.0.66) [INFO] [stderr] Adding unindent v0.1.11 (latest: v0.2.3) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+506512391b1a75ae450d36c9420978402a91abcc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded indoc v1.0.9 [INFO] [stderr] Downloaded rithm v14.0.0 [INFO] [stderr] Downloaded pyo3-macros-backend v0.19.2 [INFO] [stderr] Downloaded pyo3-macros v0.19.2 [INFO] [stderr] Downloaded pyo3 v0.19.2 [INFO] [stderr] Downloaded pyo3-build-config v0.19.2 [INFO] [stderr] Downloaded pyo3-ffi v0.19.2 [INFO] [stderr] Downloaded traiter v4.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:beeedbb442662e57d416641ecc3200b38e573c25b057896194468d05594dd835" "/opt/rustwide/cargo-home/bin/cargo" "+506512391b1a75ae450d36c9420978402a91abcc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1f4e439da4211f0c77c60349f69d359c59680e9b4bb7a967e1fd526776270f42 [INFO] running `Command { std: "docker" "start" "-a" "1f4e439da4211f0c77c60349f69d359c59680e9b4bb7a967e1fd526776270f42", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1f4e439da4211f0c77c60349f69d359c59680e9b4bb7a967e1fd526776270f42", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1f4e439da4211f0c77c60349f69d359c59680e9b4bb7a967e1fd526776270f42", kill_on_drop: false }` [INFO] [stdout] 1f4e439da4211f0c77c60349f69d359c59680e9b4bb7a967e1fd526776270f42 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=allow" "-e" "RUSTDOCFLAGS=--cap-lints=allow" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:beeedbb442662e57d416641ecc3200b38e573c25b057896194468d05594dd835" "/opt/rustwide/cargo-home/bin/cargo" "+506512391b1a75ae450d36c9420978402a91abcc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d4644fdec474f83ebeb1fb16f1d1e07fc45f823a72dba3f8c89e58152ae04b35 [INFO] running `Command { std: "docker" "start" "-a" "d4644fdec474f83ebeb1fb16f1d1e07fc45f823a72dba3f8c89e58152ae04b35", kill_on_drop: false }` [INFO] [stderr] Compiling target-lexicon v0.12.14 [INFO] [stderr] Compiling proc-macro2 v1.0.84 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling indoc v1.0.9 [INFO] [stderr] Checking unindent v0.1.11 [INFO] [stderr] Checking traiter v4.0.0 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Compiling pyo3-build-config v0.19.2 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling pyo3-ffi v0.19.2 [INFO] [stderr] Compiling pyo3 v0.19.2 [INFO] [stderr] Compiling rithm v14.0.0 [INFO] [stderr] Compiling rene v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling pyo3-macros-backend v0.19.2 [INFO] [stderr] Compiling pyo3-macros v0.19.2 [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:88:43 [INFO] [stdout] | [INFO] [stdout] 88 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 89 | | &bounding_boxes, [INFO] [stdout] 90 | | &other_bounding_box, [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:88:43 [INFO] [stdout] | [INFO] [stdout] 88 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 89 | | &bounding_boxes, [INFO] [stdout] 90 | | &other_bounding_box, [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 74 | fn difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 103 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 104 | | &other_bounding_boxes, [INFO] [stdout] 105 | | &bounding_box, [INFO] [stdout] 106 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 74 | fn difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 103 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 104 | | &other_bounding_boxes, [INFO] [stdout] 105 | | &bounding_box, [INFO] [stdout] 106 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 104 | | &other_bounding_boxes, [INFO] [stdout] 105 | | &bounding_box, [INFO] [stdout] 106 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 104 | | &other_bounding_boxes, [INFO] [stdout] 105 | | &bounding_box, [INFO] [stdout] 106 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:185:43 [INFO] [stdout] | [INFO] [stdout] 171 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 185 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 186 | | &bounding_boxes, [INFO] [stdout] 187 | | &other_bounding_box, [INFO] [stdout] 188 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:185:43 [INFO] [stdout] | [INFO] [stdout] 171 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 185 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 186 | | &bounding_boxes, [INFO] [stdout] 187 | | &other_bounding_box, [INFO] [stdout] 188 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:185:43 [INFO] [stdout] | [INFO] [stdout] 185 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 186 | | &bounding_boxes, [INFO] [stdout] 187 | | &other_bounding_box, [INFO] [stdout] 188 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:185:43 [INFO] [stdout] | [INFO] [stdout] 185 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 186 | | &bounding_boxes, [INFO] [stdout] 187 | | &other_bounding_box, [INFO] [stdout] 188 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/contour/difference.rs:195:36 [INFO] [stdout] | [INFO] [stdout] 194 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 195 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 200 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 201 | | &other_bounding_boxes, [INFO] [stdout] 202 | | &bounding_box, [INFO] [stdout] 203 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 251 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 171 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 200 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 201 | | &other_bounding_boxes, [INFO] [stdout] 202 | | &bounding_box, [INFO] [stdout] 203 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/contour/difference.rs:195:36 [INFO] [stdout] | [INFO] [stdout] 194 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 195 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 200 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 201 | | &other_bounding_boxes, [INFO] [stdout] 202 | | &bounding_box, [INFO] [stdout] 203 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 251 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 200 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 201 | | &other_bounding_boxes, [INFO] [stdout] 202 | | &bounding_box, [INFO] [stdout] 203 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 171 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 200 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 201 | | &other_bounding_boxes, [INFO] [stdout] 202 | | &bounding_box, [INFO] [stdout] 203 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 200 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 201 | | &other_bounding_boxes, [INFO] [stdout] 202 | | &bounding_box, [INFO] [stdout] 203 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:281:43 [INFO] [stdout] | [INFO] [stdout] 267 | fn difference(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 281 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 282 | | &bounding_boxes, [INFO] [stdout] 283 | | &other_bounding_box, [INFO] [stdout] 284 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:281:43 [INFO] [stdout] | [INFO] [stdout] 281 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 282 | | &bounding_boxes, [INFO] [stdout] 283 | | &other_bounding_box, [INFO] [stdout] 284 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:281:43 [INFO] [stdout] | [INFO] [stdout] 267 | fn difference(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 281 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 282 | | &bounding_boxes, [INFO] [stdout] 283 | | &other_bounding_box, [INFO] [stdout] 284 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:281:43 [INFO] [stdout] | [INFO] [stdout] 281 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 282 | | &bounding_boxes, [INFO] [stdout] 283 | | &other_bounding_box, [INFO] [stdout] 284 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/contour/difference.rs:291:36 [INFO] [stdout] | [INFO] [stdout] 290 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 291 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 346 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/contour/difference.rs:291:36 [INFO] [stdout] | [INFO] [stdout] 290 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 291 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 346 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 267 | fn difference(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 267 | fn difference(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:377:43 [INFO] [stdout] | [INFO] [stdout] 363 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 377 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 378 | | &bounding_boxes, [INFO] [stdout] 379 | | &other_bounding_box, [INFO] [stdout] 380 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:377:43 [INFO] [stdout] | [INFO] [stdout] 363 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 377 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 378 | | &bounding_boxes, [INFO] [stdout] 379 | | &other_bounding_box, [INFO] [stdout] 380 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:377:43 [INFO] [stdout] | [INFO] [stdout] 377 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 378 | | &bounding_boxes, [INFO] [stdout] 379 | | &other_bounding_box, [INFO] [stdout] 380 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:377:43 [INFO] [stdout] | [INFO] [stdout] 363 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 377 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 378 | | &bounding_boxes, [INFO] [stdout] 379 | | &other_bounding_box, [INFO] [stdout] 380 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/difference.rs:377:43 [INFO] [stdout] | [INFO] [stdout] 363 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 377 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 378 | | &bounding_boxes, [INFO] [stdout] 379 | | &other_bounding_box, [INFO] [stdout] 380 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/difference.rs:377:43 [INFO] [stdout] | [INFO] [stdout] 377 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 378 | | &bounding_boxes, [INFO] [stdout] 379 | | &other_bounding_box, [INFO] [stdout] 380 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/intersection.rs:114:45 [INFO] [stdout] | [INFO] [stdout] 100 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 114 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 115 | | &bounding_boxes, [INFO] [stdout] 116 | | &other_bounding_box, [INFO] [stdout] 117 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/intersection.rs:114:45 [INFO] [stdout] | [INFO] [stdout] 114 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 115 | | &bounding_boxes, [INFO] [stdout] 116 | | &other_bounding_box, [INFO] [stdout] 117 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/contour/intersection.rs:122:36 [INFO] [stdout] | [INFO] [stdout] 121 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 122 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 127 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 178 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/intersection.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 100 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 127 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/intersection.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/intersection.rs:114:45 [INFO] [stdout] | [INFO] [stdout] 100 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 114 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 115 | | &bounding_boxes, [INFO] [stdout] 116 | | &other_bounding_box, [INFO] [stdout] 117 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/intersection.rs:114:45 [INFO] [stdout] | [INFO] [stdout] 114 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 115 | | &bounding_boxes, [INFO] [stdout] 116 | | &other_bounding_box, [INFO] [stdout] 117 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/intersection.rs:239:45 [INFO] [stdout] | [INFO] [stdout] 225 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 239 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 240 | | &bounding_boxes, [INFO] [stdout] 241 | | &other_bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/contour/intersection.rs:122:36 [INFO] [stdout] | [INFO] [stdout] 121 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 122 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 127 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 178 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/intersection.rs:239:45 [INFO] [stdout] | [INFO] [stdout] 225 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 239 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 240 | | &bounding_boxes, [INFO] [stdout] 241 | | &other_bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/intersection.rs:239:45 [INFO] [stdout] | [INFO] [stdout] 239 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 240 | | &bounding_boxes, [INFO] [stdout] 241 | | &other_bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/intersection.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 100 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 127 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/intersection.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/intersection.rs:239:45 [INFO] [stdout] | [INFO] [stdout] 225 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 239 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 240 | | &bounding_boxes, [INFO] [stdout] 241 | | &other_bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/intersection.rs:239:45 [INFO] [stdout] | [INFO] [stdout] 225 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 239 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 240 | | &bounding_boxes, [INFO] [stdout] 241 | | &other_bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/intersection.rs:239:45 [INFO] [stdout] | [INFO] [stdout] 239 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 240 | | &bounding_boxes, [INFO] [stdout] 241 | | &other_bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:86:43 [INFO] [stdout] | [INFO] [stdout] 86 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 87 | | &bounding_boxes, [INFO] [stdout] 88 | | &other_bounding_box, [INFO] [stdout] 89 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:102:49 [INFO] [stdout] | [INFO] [stdout] 70 | fn symmetric_difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 102 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:102:49 [INFO] [stdout] | [INFO] [stdout] 102 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:86:43 [INFO] [stdout] | [INFO] [stdout] 86 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 87 | | &bounding_boxes, [INFO] [stdout] 88 | | &other_bounding_box, [INFO] [stdout] 89 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:102:49 [INFO] [stdout] | [INFO] [stdout] 70 | fn symmetric_difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 102 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:102:49 [INFO] [stdout] | [INFO] [stdout] 102 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 176 | other: &Multisegment, [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:205:36 [INFO] [stdout] | [INFO] [stdout] 180 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 205 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 261 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 175 | self, [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:294:43 [INFO] [stdout] | [INFO] [stdout] 278 | fn symmetric_difference(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 294 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 295 | | &bounding_boxes, [INFO] [stdout] 296 | | &other_bounding_box, [INFO] [stdout] 297 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:294:43 [INFO] [stdout] | [INFO] [stdout] 278 | fn symmetric_difference(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 294 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 295 | | &bounding_boxes, [INFO] [stdout] 296 | | &other_bounding_box, [INFO] [stdout] 297 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:294:43 [INFO] [stdout] | [INFO] [stdout] 294 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 295 | | &bounding_boxes, [INFO] [stdout] 296 | | &other_bounding_box, [INFO] [stdout] 297 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 176 | other: &Multisegment, [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:205:36 [INFO] [stdout] | [INFO] [stdout] 180 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 205 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 261 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 175 | self, [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:294:43 [INFO] [stdout] | [INFO] [stdout] 278 | fn symmetric_difference(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 294 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 295 | | &bounding_boxes, [INFO] [stdout] 296 | | &other_bounding_box, [INFO] [stdout] 297 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:294:43 [INFO] [stdout] | [INFO] [stdout] 278 | fn symmetric_difference(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 294 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 295 | | &bounding_boxes, [INFO] [stdout] 296 | | &other_bounding_box, [INFO] [stdout] 297 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/symmetric_difference.rs:294:43 [INFO] [stdout] | [INFO] [stdout] 294 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 295 | | &bounding_boxes, [INFO] [stdout] 296 | | &other_bounding_box, [INFO] [stdout] 297 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/union.rs:88:43 [INFO] [stdout] | [INFO] [stdout] 88 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 89 | | &bounding_boxes, [INFO] [stdout] 90 | | &other_bounding_box, [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/union.rs:104:49 [INFO] [stdout] | [INFO] [stdout] 72 | fn union(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 104 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 105 | | &other_bounding_boxes, [INFO] [stdout] 106 | | &bounding_box, [INFO] [stdout] 107 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/union.rs:104:49 [INFO] [stdout] | [INFO] [stdout] 104 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 105 | | &other_bounding_boxes, [INFO] [stdout] 106 | | &bounding_box, [INFO] [stdout] 107 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/union.rs:88:43 [INFO] [stdout] | [INFO] [stdout] 88 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 89 | | &bounding_boxes, [INFO] [stdout] 90 | | &other_bounding_box, [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/union.rs:104:49 [INFO] [stdout] | [INFO] [stdout] 72 | fn union(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 104 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 105 | | &other_bounding_boxes, [INFO] [stdout] 106 | | &bounding_box, [INFO] [stdout] 107 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/union.rs:104:49 [INFO] [stdout] | [INFO] [stdout] 104 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 105 | | &other_bounding_boxes, [INFO] [stdout] 106 | | &bounding_box, [INFO] [stdout] 107 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/union.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 177 | fn union(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/union.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/contour/union.rs:205:36 [INFO] [stdout] | [INFO] [stdout] 180 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 205 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 262 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/union.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 177 | fn union(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/union.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/union.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 177 | fn union(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/union.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/contour/union.rs:205:36 [INFO] [stdout] | [INFO] [stdout] 180 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 205 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 262 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/contour/union.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 177 | fn union(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Contour` [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/contour/union.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | to_boxes_have_common_area(&bounding_boxes, &other_bounding_box); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | to_boxes_have_common_area(&bounding_boxes, &other_bounding_box); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:92:46 [INFO] [stdout] | [INFO] [stdout] 69 | fn difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 92 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 93 | | &other_bounding_boxes, [INFO] [stdout] 94 | | &bounding_box, [INFO] [stdout] 95 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:92:46 [INFO] [stdout] | [INFO] [stdout] 69 | fn difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 92 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 93 | | &other_bounding_boxes, [INFO] [stdout] 94 | | &bounding_box, [INFO] [stdout] 95 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:92:46 [INFO] [stdout] | [INFO] [stdout] 92 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 93 | | &other_bounding_boxes, [INFO] [stdout] 94 | | &bounding_box, [INFO] [stdout] 95 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:92:46 [INFO] [stdout] | [INFO] [stdout] 92 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 93 | | &other_bounding_boxes, [INFO] [stdout] 94 | | &bounding_box, [INFO] [stdout] 95 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 156 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 168 | to_boxes_have_common_area(&bounding_boxes, &other_bounding_box); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:552:39 [INFO] [stdout] | [INFO] [stdout] 552 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 156 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 168 | to_boxes_have_common_area(&bounding_boxes, &other_bounding_box); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:552:39 [INFO] [stdout] | [INFO] [stdout] 552 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | to_boxes_have_common_area(&bounding_boxes, &other_bounding_box); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 156 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 168 | to_boxes_have_common_area(&bounding_boxes, &other_bounding_box); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:552:39 [INFO] [stdout] | [INFO] [stdout] 552 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 156 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 168 | to_boxes_have_common_area(&bounding_boxes, &other_bounding_box); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:552:39 [INFO] [stdout] | [INFO] [stdout] 552 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/difference.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | to_boxes_have_common_area(&bounding_boxes, &other_bounding_box); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:74:40 [INFO] [stdout] | [INFO] [stdout] 74 | let common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 75 | | &bounding_boxes, [INFO] [stdout] 76 | | &other_bounding_box, [INFO] [stdout] 77 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:86:46 [INFO] [stdout] | [INFO] [stdout] 63 | fn intersection(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 86 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 87 | | &other_bounding_boxes, [INFO] [stdout] 88 | | &bounding_box, [INFO] [stdout] 89 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:86:46 [INFO] [stdout] | [INFO] [stdout] 86 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 87 | | &other_bounding_boxes, [INFO] [stdout] 88 | | &bounding_box, [INFO] [stdout] 89 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:74:40 [INFO] [stdout] | [INFO] [stdout] 74 | let common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 75 | | &bounding_boxes, [INFO] [stdout] 76 | | &other_bounding_box, [INFO] [stdout] 77 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:86:46 [INFO] [stdout] | [INFO] [stdout] 63 | fn intersection(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 86 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 87 | | &other_bounding_boxes, [INFO] [stdout] 88 | | &bounding_box, [INFO] [stdout] 89 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:86:46 [INFO] [stdout] | [INFO] [stdout] 86 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 87 | | &other_bounding_boxes, [INFO] [stdout] 88 | | &bounding_box, [INFO] [stdout] 89 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:164:45 [INFO] [stdout] | [INFO] [stdout] 150 | fn intersection(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 164 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 165 | | &bounding_boxes, [INFO] [stdout] 166 | | &other_bounding_box, [INFO] [stdout] 167 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:164:45 [INFO] [stdout] | [INFO] [stdout] 164 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 165 | | &bounding_boxes, [INFO] [stdout] 166 | | &other_bounding_box, [INFO] [stdout] 167 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:172:36 [INFO] [stdout] | [INFO] [stdout] 171 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 172 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 177 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 178 | | &other_bounding_boxes, [INFO] [stdout] 179 | | &bounding_box, [INFO] [stdout] 180 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 228 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:177:13 [INFO] [stdout] | [INFO] [stdout] 150 | fn intersection(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 177 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 178 | | &other_bounding_boxes, [INFO] [stdout] 179 | | &bounding_box, [INFO] [stdout] 180 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:177:13 [INFO] [stdout] | [INFO] [stdout] 177 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 178 | | &other_bounding_boxes, [INFO] [stdout] 179 | | &bounding_box, [INFO] [stdout] 180 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:164:45 [INFO] [stdout] | [INFO] [stdout] 150 | fn intersection(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 164 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 165 | | &bounding_boxes, [INFO] [stdout] 166 | | &other_bounding_box, [INFO] [stdout] 167 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:164:45 [INFO] [stdout] | [INFO] [stdout] 164 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 165 | | &bounding_boxes, [INFO] [stdout] 166 | | &other_bounding_box, [INFO] [stdout] 167 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:172:36 [INFO] [stdout] | [INFO] [stdout] 171 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 172 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 177 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 178 | | &other_bounding_boxes, [INFO] [stdout] 179 | | &bounding_box, [INFO] [stdout] 180 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 228 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:177:13 [INFO] [stdout] | [INFO] [stdout] 150 | fn intersection(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 177 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 178 | | &other_bounding_boxes, [INFO] [stdout] 179 | | &bounding_box, [INFO] [stdout] 180 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:177:13 [INFO] [stdout] | [INFO] [stdout] 177 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 178 | | &other_bounding_boxes, [INFO] [stdout] 179 | | &bounding_box, [INFO] [stdout] 180 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:260:45 [INFO] [stdout] | [INFO] [stdout] 246 | fn intersection(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 260 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 261 | | &bounding_boxes, [INFO] [stdout] 262 | | &other_bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:260:45 [INFO] [stdout] | [INFO] [stdout] 260 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 261 | | &bounding_boxes, [INFO] [stdout] 262 | | &other_bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:268:36 [INFO] [stdout] | [INFO] [stdout] 267 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 268 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 273 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 274 | | &other_bounding_boxes, [INFO] [stdout] 275 | | &bounding_box, [INFO] [stdout] 276 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 324 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 246 | fn intersection(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 273 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 274 | | &other_bounding_boxes, [INFO] [stdout] 275 | | &bounding_box, [INFO] [stdout] 276 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 274 | | &other_bounding_boxes, [INFO] [stdout] 275 | | &bounding_box, [INFO] [stdout] 276 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:260:45 [INFO] [stdout] | [INFO] [stdout] 246 | fn intersection(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 260 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 261 | | &bounding_boxes, [INFO] [stdout] 262 | | &other_bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:260:45 [INFO] [stdout] | [INFO] [stdout] 260 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 261 | | &bounding_boxes, [INFO] [stdout] 262 | | &other_bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:268:36 [INFO] [stdout] | [INFO] [stdout] 267 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 268 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 273 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 274 | | &other_bounding_boxes, [INFO] [stdout] 275 | | &bounding_box, [INFO] [stdout] 276 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 324 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 246 | fn intersection(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 273 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 274 | | &other_bounding_boxes, [INFO] [stdout] 275 | | &bounding_box, [INFO] [stdout] 276 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 274 | | &other_bounding_boxes, [INFO] [stdout] 275 | | &bounding_box, [INFO] [stdout] 276 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:351:40 [INFO] [stdout] | [INFO] [stdout] 340 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 351 | let common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 352 | | &bounding_boxes, [INFO] [stdout] 353 | | &other_bounding_box, [INFO] [stdout] 354 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:351:40 [INFO] [stdout] | [INFO] [stdout] 340 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 351 | let common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 352 | | &bounding_boxes, [INFO] [stdout] 353 | | &other_bounding_box, [INFO] [stdout] 354 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:351:40 [INFO] [stdout] | [INFO] [stdout] 351 | let common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 352 | | &bounding_boxes, [INFO] [stdout] 353 | | &other_bounding_box, [INFO] [stdout] 354 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:351:40 [INFO] [stdout] | [INFO] [stdout] 340 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 351 | let common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 352 | | &bounding_boxes, [INFO] [stdout] 353 | | &other_bounding_box, [INFO] [stdout] 354 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:351:40 [INFO] [stdout] | [INFO] [stdout] 340 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 351 | let common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 352 | | &bounding_boxes, [INFO] [stdout] 353 | | &other_bounding_box, [INFO] [stdout] 354 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:351:40 [INFO] [stdout] | [INFO] [stdout] 351 | let common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 352 | | &bounding_boxes, [INFO] [stdout] 353 | | &other_bounding_box, [INFO] [stdout] 354 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:418:45 [INFO] [stdout] | [INFO] [stdout] 404 | fn intersection(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 418 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 419 | | &bounding_boxes, [INFO] [stdout] 420 | | &other_bounding_box, [INFO] [stdout] 421 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:418:45 [INFO] [stdout] | [INFO] [stdout] 404 | fn intersection(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 418 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 419 | | &bounding_boxes, [INFO] [stdout] 420 | | &other_bounding_box, [INFO] [stdout] 421 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:418:45 [INFO] [stdout] | [INFO] [stdout] 418 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 419 | | &bounding_boxes, [INFO] [stdout] 420 | | &other_bounding_box, [INFO] [stdout] 421 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:418:45 [INFO] [stdout] | [INFO] [stdout] 404 | fn intersection(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 418 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 419 | | &bounding_boxes, [INFO] [stdout] 420 | | &other_bounding_box, [INFO] [stdout] 421 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:418:45 [INFO] [stdout] | [INFO] [stdout] 404 | fn intersection(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 418 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 419 | | &bounding_boxes, [INFO] [stdout] 420 | | &other_bounding_box, [INFO] [stdout] 421 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/intersection.rs:418:45 [INFO] [stdout] | [INFO] [stdout] 418 | let common_continuum_polygons_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 419 | | &bounding_boxes, [INFO] [stdout] 420 | | &other_bounding_box, [INFO] [stdout] 421 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:84:43 [INFO] [stdout] | [INFO] [stdout] 84 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 85 | | &bounding_boxes, [INFO] [stdout] 86 | | &other_bounding_box, [INFO] [stdout] 87 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:100:49 [INFO] [stdout] | [INFO] [stdout] 68 | fn symmetric_difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 100 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 101 | | &other_bounding_boxes, [INFO] [stdout] 102 | | &bounding_box, [INFO] [stdout] 103 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:100:49 [INFO] [stdout] | [INFO] [stdout] 100 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 101 | | &other_bounding_boxes, [INFO] [stdout] 102 | | &bounding_box, [INFO] [stdout] 103 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:84:43 [INFO] [stdout] | [INFO] [stdout] 84 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 85 | | &bounding_boxes, [INFO] [stdout] 86 | | &other_bounding_box, [INFO] [stdout] 87 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:100:49 [INFO] [stdout] | [INFO] [stdout] 68 | fn symmetric_difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 100 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 101 | | &other_bounding_boxes, [INFO] [stdout] 102 | | &bounding_box, [INFO] [stdout] 103 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:100:49 [INFO] [stdout] | [INFO] [stdout] 100 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 101 | | &other_bounding_boxes, [INFO] [stdout] 102 | | &bounding_box, [INFO] [stdout] 103 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:183:43 [INFO] [stdout] | [INFO] [stdout] 167 | fn symmetric_difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 183 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 184 | | &bounding_boxes, [INFO] [stdout] 185 | | &other_bounding_box, [INFO] [stdout] 186 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:183:43 [INFO] [stdout] | [INFO] [stdout] 167 | fn symmetric_difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 183 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 184 | | &bounding_boxes, [INFO] [stdout] 185 | | &other_bounding_box, [INFO] [stdout] 186 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:183:43 [INFO] [stdout] | [INFO] [stdout] 183 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 184 | | &bounding_boxes, [INFO] [stdout] 185 | | &other_bounding_box, [INFO] [stdout] 186 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:183:43 [INFO] [stdout] | [INFO] [stdout] 167 | fn symmetric_difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 183 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 184 | | &bounding_boxes, [INFO] [stdout] 185 | | &other_bounding_box, [INFO] [stdout] 186 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:183:43 [INFO] [stdout] | [INFO] [stdout] 167 | fn symmetric_difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 183 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 184 | | &bounding_boxes, [INFO] [stdout] 185 | | &other_bounding_box, [INFO] [stdout] 186 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/symmetric_difference.rs:183:43 [INFO] [stdout] | [INFO] [stdout] 183 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 184 | | &bounding_boxes, [INFO] [stdout] 185 | | &other_bounding_box, [INFO] [stdout] 186 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/union.rs:84:43 [INFO] [stdout] | [INFO] [stdout] 84 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 85 | | &bounding_boxes, [INFO] [stdout] 86 | | &other_bounding_box, [INFO] [stdout] 87 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/union.rs:100:49 [INFO] [stdout] | [INFO] [stdout] 68 | fn union(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 100 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 101 | | &other_bounding_boxes, [INFO] [stdout] 102 | | &bounding_box, [INFO] [stdout] 103 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/union.rs:100:49 [INFO] [stdout] | [INFO] [stdout] 100 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 101 | | &other_bounding_boxes, [INFO] [stdout] 102 | | &bounding_box, [INFO] [stdout] 103 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/union.rs:84:43 [INFO] [stdout] | [INFO] [stdout] 84 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 85 | | &bounding_boxes, [INFO] [stdout] 86 | | &other_bounding_box, [INFO] [stdout] 87 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/union.rs:100:49 [INFO] [stdout] | [INFO] [stdout] 68 | fn union(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 100 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 101 | | &other_bounding_boxes, [INFO] [stdout] 102 | | &bounding_box, [INFO] [stdout] 103 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/union.rs:100:49 [INFO] [stdout] | [INFO] [stdout] 100 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 101 | | &other_bounding_boxes, [INFO] [stdout] 102 | | &bounding_box, [INFO] [stdout] 103 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/union.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 168 | fn union(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/union.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 168 | fn union(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/union.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/union.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 168 | fn union(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multipolygon` [INFO] [stdout] ... [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multipolygon/union.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 168 | fn union(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multipolygon/union.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:88:43 [INFO] [stdout] | [INFO] [stdout] 88 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 89 | | &bounding_boxes, [INFO] [stdout] 90 | | &other_bounding_box, [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 74 | fn difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 103 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 104 | | &other_bounding_boxes, [INFO] [stdout] 105 | | &bounding_box, [INFO] [stdout] 106 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 104 | | &other_bounding_boxes, [INFO] [stdout] 105 | | &bounding_box, [INFO] [stdout] 106 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:88:43 [INFO] [stdout] | [INFO] [stdout] 88 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 89 | | &bounding_boxes, [INFO] [stdout] 90 | | &other_bounding_box, [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 74 | fn difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 103 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 104 | | &other_bounding_boxes, [INFO] [stdout] 105 | | &bounding_box, [INFO] [stdout] 106 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 104 | | &other_bounding_boxes, [INFO] [stdout] 105 | | &bounding_box, [INFO] [stdout] 106 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 170 | fn difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:194:36 [INFO] [stdout] | [INFO] [stdout] 193 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 194 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 199 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 200 | | &other_bounding_boxes, [INFO] [stdout] 201 | | &bounding_box, [INFO] [stdout] 202 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 249 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:199:13 [INFO] [stdout] | [INFO] [stdout] 170 | fn difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 199 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 200 | | &other_bounding_boxes, [INFO] [stdout] 201 | | &bounding_box, [INFO] [stdout] 202 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:199:13 [INFO] [stdout] | [INFO] [stdout] 199 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 200 | | &other_bounding_boxes, [INFO] [stdout] 201 | | &bounding_box, [INFO] [stdout] 202 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:281:43 [INFO] [stdout] | [INFO] [stdout] 267 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 281 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 282 | | &bounding_boxes, [INFO] [stdout] 283 | | &other_bounding_box, [INFO] [stdout] 284 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:281:43 [INFO] [stdout] | [INFO] [stdout] 281 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 282 | | &bounding_boxes, [INFO] [stdout] 283 | | &other_bounding_box, [INFO] [stdout] 284 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 170 | fn difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:291:36 [INFO] [stdout] | [INFO] [stdout] 290 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 291 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 347 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 267 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:184:43 [INFO] [stdout] | [INFO] [stdout] 184 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 185 | | &bounding_boxes, [INFO] [stdout] 186 | | &other_bounding_box, [INFO] [stdout] 187 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:194:36 [INFO] [stdout] | [INFO] [stdout] 193 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 194 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 199 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 200 | | &other_bounding_boxes, [INFO] [stdout] 201 | | &bounding_box, [INFO] [stdout] 202 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 249 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:199:13 [INFO] [stdout] | [INFO] [stdout] 170 | fn difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 199 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 200 | | &other_bounding_boxes, [INFO] [stdout] 201 | | &bounding_box, [INFO] [stdout] 202 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:199:13 [INFO] [stdout] | [INFO] [stdout] 199 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 200 | | &other_bounding_boxes, [INFO] [stdout] 201 | | &bounding_box, [INFO] [stdout] 202 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:378:43 [INFO] [stdout] | [INFO] [stdout] 364 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 378 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 379 | | &bounding_boxes, [INFO] [stdout] 380 | | &other_bounding_box, [INFO] [stdout] 381 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:378:43 [INFO] [stdout] | [INFO] [stdout] 364 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 378 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 379 | | &bounding_boxes, [INFO] [stdout] 380 | | &other_bounding_box, [INFO] [stdout] 381 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:378:43 [INFO] [stdout] | [INFO] [stdout] 378 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 379 | | &bounding_boxes, [INFO] [stdout] 380 | | &other_bounding_box, [INFO] [stdout] 381 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:281:43 [INFO] [stdout] | [INFO] [stdout] 267 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 281 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 282 | | &bounding_boxes, [INFO] [stdout] 283 | | &other_bounding_box, [INFO] [stdout] 284 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:281:43 [INFO] [stdout] | [INFO] [stdout] 281 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 282 | | &bounding_boxes, [INFO] [stdout] 283 | | &other_bounding_box, [INFO] [stdout] 284 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:291:36 [INFO] [stdout] | [INFO] [stdout] 290 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 291 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 347 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 267 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 296 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 297 | | &other_bounding_boxes, [INFO] [stdout] 298 | | &bounding_box, [INFO] [stdout] 299 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:378:43 [INFO] [stdout] | [INFO] [stdout] 364 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 378 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 379 | | &bounding_boxes, [INFO] [stdout] 380 | | &other_bounding_box, [INFO] [stdout] 381 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/difference.rs:378:43 [INFO] [stdout] | [INFO] [stdout] 364 | fn difference(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 378 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 379 | | &bounding_boxes, [INFO] [stdout] 380 | | &other_bounding_box, [INFO] [stdout] 381 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/difference.rs:378:43 [INFO] [stdout] | [INFO] [stdout] 378 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 379 | | &bounding_boxes, [INFO] [stdout] 380 | | &other_bounding_box, [INFO] [stdout] 381 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:84:45 [INFO] [stdout] | [INFO] [stdout] 84 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 85 | | &bounding_boxes, [INFO] [stdout] 86 | | &other_bounding_box, [INFO] [stdout] 87 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 70 | fn intersection(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 102 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:221:45 [INFO] [stdout] | [INFO] [stdout] 207 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 221 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 222 | | &bounding_boxes, [INFO] [stdout] 223 | | &other_bounding_box, [INFO] [stdout] 224 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:221:45 [INFO] [stdout] | [INFO] [stdout] 221 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 222 | | &bounding_boxes, [INFO] [stdout] 223 | | &other_bounding_box, [INFO] [stdout] 224 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:229:36 [INFO] [stdout] | [INFO] [stdout] 228 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 229 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 234 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 235 | | &other_bounding_boxes, [INFO] [stdout] 236 | | &bounding_box, [INFO] [stdout] 237 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 285 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:234:13 [INFO] [stdout] | [INFO] [stdout] 207 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 234 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 235 | | &other_bounding_boxes, [INFO] [stdout] 236 | | &bounding_box, [INFO] [stdout] 237 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:234:13 [INFO] [stdout] | [INFO] [stdout] 234 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 235 | | &other_bounding_boxes, [INFO] [stdout] 236 | | &bounding_box, [INFO] [stdout] 237 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:84:45 [INFO] [stdout] | [INFO] [stdout] 84 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 85 | | &bounding_boxes, [INFO] [stdout] 86 | | &other_bounding_box, [INFO] [stdout] 87 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 70 | fn intersection(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 102 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:316:45 [INFO] [stdout] | [INFO] [stdout] 302 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 316 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 317 | | &bounding_boxes, [INFO] [stdout] 318 | | &other_bounding_box, [INFO] [stdout] 319 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:316:45 [INFO] [stdout] | [INFO] [stdout] 302 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 316 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 317 | | &bounding_boxes, [INFO] [stdout] 318 | | &other_bounding_box, [INFO] [stdout] 319 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:316:45 [INFO] [stdout] | [INFO] [stdout] 316 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 317 | | &bounding_boxes, [INFO] [stdout] 318 | | &other_bounding_box, [INFO] [stdout] 319 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:221:45 [INFO] [stdout] | [INFO] [stdout] 207 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 221 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 222 | | &bounding_boxes, [INFO] [stdout] 223 | | &other_bounding_box, [INFO] [stdout] 224 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:221:45 [INFO] [stdout] | [INFO] [stdout] 221 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 222 | | &bounding_boxes, [INFO] [stdout] 223 | | &other_bounding_box, [INFO] [stdout] 224 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:229:36 [INFO] [stdout] | [INFO] [stdout] 228 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 229 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 234 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 235 | | &other_bounding_boxes, [INFO] [stdout] 236 | | &bounding_box, [INFO] [stdout] 237 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 285 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:234:13 [INFO] [stdout] | [INFO] [stdout] 207 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 234 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 235 | | &other_bounding_boxes, [INFO] [stdout] 236 | | &bounding_box, [INFO] [stdout] 237 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:234:13 [INFO] [stdout] | [INFO] [stdout] 234 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 235 | | &other_bounding_boxes, [INFO] [stdout] 236 | | &bounding_box, [INFO] [stdout] 237 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:86:43 [INFO] [stdout] | [INFO] [stdout] 86 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 87 | | &bounding_boxes, [INFO] [stdout] 88 | | &other_bounding_box, [INFO] [stdout] 89 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:102:49 [INFO] [stdout] | [INFO] [stdout] 70 | fn symmetric_difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 102 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:102:49 [INFO] [stdout] | [INFO] [stdout] 102 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:316:45 [INFO] [stdout] | [INFO] [stdout] 302 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 316 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 317 | | &bounding_boxes, [INFO] [stdout] 318 | | &other_bounding_box, [INFO] [stdout] 319 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:316:45 [INFO] [stdout] | [INFO] [stdout] 302 | fn intersection(self, other: &Polygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 316 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 317 | | &bounding_boxes, [INFO] [stdout] 318 | | &other_bounding_box, [INFO] [stdout] 319 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/intersection.rs:316:45 [INFO] [stdout] | [INFO] [stdout] 316 | let common_continuum_segments_ids = to_boxes_ids_with_common_continuum( [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 317 | | &bounding_boxes, [INFO] [stdout] 318 | | &other_bounding_box, [INFO] [stdout] 319 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:191:43 [INFO] [stdout] | [INFO] [stdout] 174 | fn symmetric_difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 191 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 192 | | &bounding_boxes, [INFO] [stdout] 193 | | &other_bounding_box, [INFO] [stdout] 194 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:191:43 [INFO] [stdout] | [INFO] [stdout] 191 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 192 | | &bounding_boxes, [INFO] [stdout] 193 | | &other_bounding_box, [INFO] [stdout] 194 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:202:36 [INFO] [stdout] | [INFO] [stdout] 177 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 202 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 206 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 207 | | &other_bounding_boxes, [INFO] [stdout] 208 | | &bounding_box, [INFO] [stdout] 209 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 258 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:206:49 [INFO] [stdout] | [INFO] [stdout] 174 | fn symmetric_difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 206 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 207 | | &other_bounding_boxes, [INFO] [stdout] 208 | | &bounding_box, [INFO] [stdout] 209 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:206:49 [INFO] [stdout] | [INFO] [stdout] 206 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 207 | | &other_bounding_boxes, [INFO] [stdout] 208 | | &bounding_box, [INFO] [stdout] 209 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:291:43 [INFO] [stdout] | [INFO] [stdout] 275 | fn symmetric_difference(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 291 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 292 | | &bounding_boxes, [INFO] [stdout] 293 | | &other_bounding_box, [INFO] [stdout] 294 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:291:43 [INFO] [stdout] | [INFO] [stdout] 275 | fn symmetric_difference(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 291 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 292 | | &bounding_boxes, [INFO] [stdout] 293 | | &other_bounding_box, [INFO] [stdout] 294 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:291:43 [INFO] [stdout] | [INFO] [stdout] 291 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 292 | | &bounding_boxes, [INFO] [stdout] 293 | | &other_bounding_box, [INFO] [stdout] 294 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:86:43 [INFO] [stdout] | [INFO] [stdout] 86 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 87 | | &bounding_boxes, [INFO] [stdout] 88 | | &other_bounding_box, [INFO] [stdout] 89 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:102:49 [INFO] [stdout] | [INFO] [stdout] 70 | fn symmetric_difference(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 102 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:102:49 [INFO] [stdout] | [INFO] [stdout] 102 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 103 | | &other_bounding_boxes, [INFO] [stdout] 104 | | &bounding_box, [INFO] [stdout] 105 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:88:43 [INFO] [stdout] | [INFO] [stdout] 88 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 89 | | &bounding_boxes, [INFO] [stdout] 90 | | &other_bounding_box, [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/union.rs:104:49 [INFO] [stdout] | [INFO] [stdout] 72 | fn union(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 104 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 105 | | &other_bounding_boxes, [INFO] [stdout] 106 | | &bounding_box, [INFO] [stdout] 107 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:104:49 [INFO] [stdout] | [INFO] [stdout] 104 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 105 | | &other_bounding_boxes, [INFO] [stdout] 106 | | &bounding_box, [INFO] [stdout] 107 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/union.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 177 | fn union(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:205:36 [INFO] [stdout] | [INFO] [stdout] 180 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 205 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 262 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/union.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 177 | fn union(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:191:43 [INFO] [stdout] | [INFO] [stdout] 174 | fn symmetric_difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 191 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 192 | | &bounding_boxes, [INFO] [stdout] 193 | | &other_bounding_box, [INFO] [stdout] 194 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:191:43 [INFO] [stdout] | [INFO] [stdout] 191 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 192 | | &bounding_boxes, [INFO] [stdout] 193 | | &other_bounding_box, [INFO] [stdout] 194 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:202:36 [INFO] [stdout] | [INFO] [stdout] 177 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 202 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 206 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 207 | | &other_bounding_boxes, [INFO] [stdout] 208 | | &bounding_box, [INFO] [stdout] 209 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 258 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:206:49 [INFO] [stdout] | [INFO] [stdout] 174 | fn symmetric_difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 206 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 207 | | &other_bounding_boxes, [INFO] [stdout] 208 | | &bounding_box, [INFO] [stdout] 209 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:206:49 [INFO] [stdout] | [INFO] [stdout] 206 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 207 | | &other_bounding_boxes, [INFO] [stdout] 208 | | &bounding_box, [INFO] [stdout] 209 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:291:43 [INFO] [stdout] | [INFO] [stdout] 275 | fn symmetric_difference(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 291 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 292 | | &bounding_boxes, [INFO] [stdout] 293 | | &other_bounding_box, [INFO] [stdout] 294 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:291:43 [INFO] [stdout] | [INFO] [stdout] 275 | fn symmetric_difference(self, other: &Segment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 291 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 292 | | &bounding_boxes, [INFO] [stdout] 293 | | &other_bounding_box, [INFO] [stdout] 294 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/symmetric_difference.rs:291:43 [INFO] [stdout] | [INFO] [stdout] 291 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 292 | | &bounding_boxes, [INFO] [stdout] 293 | | &other_bounding_box, [INFO] [stdout] 294 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/polygon/difference.rs:113:36 [INFO] [stdout] | [INFO] [stdout] 112 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 113 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 117 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________- [INFO] [stdout] 118 | | &other_bounding_boxes, [INFO] [stdout] 119 | | &other_bounding_box, [INFO] [stdout] 120 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 147 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/difference.rs:117:46 [INFO] [stdout] | [INFO] [stdout] 106 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'1` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 117 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 118 | | &other_bounding_boxes, [INFO] [stdout] 119 | | &other_bounding_box, [INFO] [stdout] 120 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/difference.rs:117:46 [INFO] [stdout] | [INFO] [stdout] 117 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 118 | | &other_bounding_boxes, [INFO] [stdout] 119 | | &other_bounding_box, [INFO] [stdout] 120 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:88:43 [INFO] [stdout] | [INFO] [stdout] 88 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 89 | | &bounding_boxes, [INFO] [stdout] 90 | | &other_bounding_box, [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/union.rs:104:49 [INFO] [stdout] | [INFO] [stdout] 72 | fn union(self, other: Self) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 104 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 105 | | &other_bounding_boxes, [INFO] [stdout] 106 | | &bounding_box, [INFO] [stdout] 107 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:104:49 [INFO] [stdout] | [INFO] [stdout] 104 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 105 | | &other_bounding_boxes, [INFO] [stdout] 106 | | &bounding_box, [INFO] [stdout] 107 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:116:36 [INFO] [stdout] | [INFO] [stdout] 115 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 116 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 121 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 161 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 106 | fn intersection(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Polygon` [INFO] [stdout] ... [INFO] [stdout] 121 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 106 | fn intersection(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 121 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 121 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:188:36 [INFO] [stdout] | [INFO] [stdout] 187 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 188 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 192 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________- [INFO] [stdout] 193 | | &other_bounding_boxes, [INFO] [stdout] 194 | | &bounding_box, [INFO] [stdout] 195 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 227 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:192:46 [INFO] [stdout] | [INFO] [stdout] 181 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Polygon` [INFO] [stdout] ... [INFO] [stdout] 192 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 193 | | &other_bounding_boxes, [INFO] [stdout] 194 | | &bounding_box, [INFO] [stdout] 195 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:192:46 [INFO] [stdout] | [INFO] [stdout] 181 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 192 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 193 | | &other_bounding_boxes, [INFO] [stdout] 194 | | &bounding_box, [INFO] [stdout] 195 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:192:46 [INFO] [stdout] | [INFO] [stdout] 192 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 193 | | &other_bounding_boxes, [INFO] [stdout] 194 | | &bounding_box, [INFO] [stdout] 195 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/union.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 177 | fn union(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 194 | let boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 195 | | &bounding_boxes, [INFO] [stdout] 196 | | &other_bounding_box, [INFO] [stdout] 197 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:205:36 [INFO] [stdout] | [INFO] [stdout] 180 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 205 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 262 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/multisegment/union.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 177 | fn union(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Multisegment` [INFO] [stdout] ... [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/multisegment/union.rs:209:49 [INFO] [stdout] | [INFO] [stdout] 209 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 210 | | &other_bounding_boxes, [INFO] [stdout] 211 | | &bounding_box, [INFO] [stdout] 212 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:255:36 [INFO] [stdout] | [INFO] [stdout] 254 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 255 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 260 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 261 | | &other_bounding_boxes, [INFO] [stdout] 262 | | &bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 300 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 245 | fn intersection(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Polygon` [INFO] [stdout] ... [INFO] [stdout] 260 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 261 | | &other_bounding_boxes, [INFO] [stdout] 262 | | &bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 245 | fn intersection(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 260 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 261 | | &other_bounding_boxes, [INFO] [stdout] 262 | | &bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 260 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 261 | | &other_bounding_boxes, [INFO] [stdout] 262 | | &bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/polygon/symmetric_difference.rs:123:36 [INFO] [stdout] | [INFO] [stdout] 113 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] ... [INFO] [stdout] 123 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 127 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &other_bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 167 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/symmetric_difference.rs:127:49 [INFO] [stdout] | [INFO] [stdout] 109 | other: &Multipolygon, [INFO] [stdout] | ----- - let's call the lifetime of this reference `'1` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 127 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &other_bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/symmetric_difference.rs:127:49 [INFO] [stdout] | [INFO] [stdout] 127 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &other_bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `other_polygons` because it is borrowed [INFO] [stdout] --> src/geometries/polygon/symmetric_difference.rs:135:17 [INFO] [stdout] | [INFO] [stdout] 113 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] ... [INFO] [stdout] 123 | let other_bounding_boxes = other_polygons [INFO] [stdout] | -------------- borrow of `other_polygons` occurs here [INFO] [stdout] ... [INFO] [stdout] 127 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &other_bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 135 | other_polygons.into_iter().cloned().collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^ move out of `other_polygons` occurs here [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] note: if `SliceSequence<'_, Polygon>` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/slice_sequence.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct SliceSequence<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] | [INFO] [stdout] ::: src/geometries/polygon/symmetric_difference.rs:123:36 [INFO] [stdout] | [INFO] [stdout] 123 | let other_bounding_boxes = other_polygons [INFO] [stdout] | -------------- you could clone this value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/polygon/difference.rs:113:36 [INFO] [stdout] | [INFO] [stdout] 112 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 113 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 117 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________- [INFO] [stdout] 118 | | &other_bounding_boxes, [INFO] [stdout] 119 | | &other_bounding_box, [INFO] [stdout] 120 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 147 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/difference.rs:117:46 [INFO] [stdout] | [INFO] [stdout] 106 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'1` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 117 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 118 | | &other_bounding_boxes, [INFO] [stdout] 119 | | &other_bounding_box, [INFO] [stdout] 120 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/difference.rs:117:46 [INFO] [stdout] | [INFO] [stdout] 117 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 118 | | &other_bounding_boxes, [INFO] [stdout] 119 | | &other_bounding_box, [INFO] [stdout] 120 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/polygon/union.rs:117:36 [INFO] [stdout] | [INFO] [stdout] 107 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] ... [INFO] [stdout] 117 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 121 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &other_bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 162 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/union.rs:121:49 [INFO] [stdout] | [INFO] [stdout] 104 | fn union(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'1` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 121 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &other_bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/union.rs:121:49 [INFO] [stdout] | [INFO] [stdout] 121 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &other_bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `other_polygons` because it is borrowed [INFO] [stdout] --> src/geometries/polygon/union.rs:129:17 [INFO] [stdout] | [INFO] [stdout] 107 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] ... [INFO] [stdout] 117 | let other_bounding_boxes = other_polygons [INFO] [stdout] | -------------- borrow of `other_polygons` occurs here [INFO] [stdout] ... [INFO] [stdout] 121 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &other_bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 129 | other_polygons.into_iter().cloned().collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^ move out of `other_polygons` occurs here [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] note: if `SliceSequence<'_, Polygon>` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/slice_sequence.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct SliceSequence<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] | [INFO] [stdout] ::: src/geometries/polygon/union.rs:117:36 [INFO] [stdout] | [INFO] [stdout] 117 | let other_bounding_boxes = other_polygons [INFO] [stdout] | -------------- you could clone this value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:116:36 [INFO] [stdout] | [INFO] [stdout] 115 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 116 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 121 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 161 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 106 | fn intersection(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Polygon` [INFO] [stdout] ... [INFO] [stdout] 121 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 106 | fn intersection(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 121 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 121 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:188:36 [INFO] [stdout] | [INFO] [stdout] 187 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 188 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 192 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________- [INFO] [stdout] 193 | | &other_bounding_boxes, [INFO] [stdout] 194 | | &bounding_box, [INFO] [stdout] 195 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 227 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:192:46 [INFO] [stdout] | [INFO] [stdout] 181 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Polygon` [INFO] [stdout] ... [INFO] [stdout] 192 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 193 | | &other_bounding_boxes, [INFO] [stdout] 194 | | &bounding_box, [INFO] [stdout] 195 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:192:46 [INFO] [stdout] | [INFO] [stdout] 181 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 192 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 193 | | &other_bounding_boxes, [INFO] [stdout] 194 | | &bounding_box, [INFO] [stdout] 195 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:582:39 [INFO] [stdout] | [INFO] [stdout] 582 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:192:46 [INFO] [stdout] | [INFO] [stdout] 192 | let other_common_area_polygons_ids = to_boxes_ids_with_common_area( [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 193 | | &other_bounding_boxes, [INFO] [stdout] 194 | | &bounding_box, [INFO] [stdout] 195 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:171:49 [INFO] [stdout] | [INFO] [stdout] 161 | fn difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 171 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 172 | | &other_segments [INFO] [stdout] 173 | | .iter() [INFO] [stdout] 174 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 175 | | .collect::>(), [INFO] [stdout] 176 | | &bounding_box, [INFO] [stdout] 177 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:171:49 [INFO] [stdout] | [INFO] [stdout] 161 | fn difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 171 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 172 | | &other_segments [INFO] [stdout] 173 | | .iter() [INFO] [stdout] 174 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 175 | | .collect::>(), [INFO] [stdout] 176 | | &bounding_box, [INFO] [stdout] 177 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/difference.rs:171:49 [INFO] [stdout] | [INFO] [stdout] 171 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 172 | | &other_segments [INFO] [stdout] 173 | | .iter() [INFO] [stdout] 174 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 175 | | .collect::>(), [INFO] [stdout] 176 | | &bounding_box, [INFO] [stdout] 177 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/segment/difference.rs:172:14 [INFO] [stdout] | [INFO] [stdout] 170 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 171 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 172 | | &other_segments [INFO] [stdout] | | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] 173 | | .iter() [INFO] [stdout] 174 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 175 | | .collect::>(), [INFO] [stdout] 176 | | &bounding_box, [INFO] [stdout] 177 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 207 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/segment/difference.rs:234:36 [INFO] [stdout] | [INFO] [stdout] 233 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 234 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 239 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 240 | | &other_bounding_boxes, [INFO] [stdout] 241 | | &bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 273 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:255:36 [INFO] [stdout] | [INFO] [stdout] 254 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 255 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 260 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 261 | | &other_bounding_boxes, [INFO] [stdout] 262 | | &bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | |_____________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 300 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 224 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 239 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 240 | | &other_bounding_boxes, [INFO] [stdout] 241 | | &bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 245 | fn intersection(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Polygon` [INFO] [stdout] ... [INFO] [stdout] 260 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 261 | | &other_bounding_boxes, [INFO] [stdout] 262 | | &bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 224 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 239 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 240 | | &other_bounding_boxes, [INFO] [stdout] 241 | | &bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/intersection.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 245 | fn intersection(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 260 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 261 | | &other_bounding_boxes, [INFO] [stdout] 262 | | &bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/difference.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 240 | | &other_bounding_boxes, [INFO] [stdout] 241 | | &bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/intersection.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 260 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 261 | | &other_bounding_boxes, [INFO] [stdout] 262 | | &bounding_box, [INFO] [stdout] 263 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:298:49 [INFO] [stdout] | [INFO] [stdout] 288 | fn difference(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 298 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 299 | | &other_segments [INFO] [stdout] 300 | | .iter() [INFO] [stdout] 301 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 302 | | .collect::>(), [INFO] [stdout] 303 | | &bounding_box, [INFO] [stdout] 304 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:298:49 [INFO] [stdout] | [INFO] [stdout] 288 | fn difference(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 298 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 299 | | &other_segments [INFO] [stdout] 300 | | .iter() [INFO] [stdout] 301 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 302 | | .collect::>(), [INFO] [stdout] 303 | | &bounding_box, [INFO] [stdout] 304 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/difference.rs:298:49 [INFO] [stdout] | [INFO] [stdout] 298 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 299 | | &other_segments [INFO] [stdout] 300 | | .iter() [INFO] [stdout] 301 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 302 | | .collect::>(), [INFO] [stdout] 303 | | &bounding_box, [INFO] [stdout] 304 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/segment/difference.rs:299:14 [INFO] [stdout] | [INFO] [stdout] 297 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 298 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 299 | | &other_segments [INFO] [stdout] | | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] 300 | | .iter() [INFO] [stdout] 301 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 302 | | .collect::>(), [INFO] [stdout] 303 | | &bounding_box, [INFO] [stdout] 304 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 334 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/segment/intersection.rs:127:36 [INFO] [stdout] | [INFO] [stdout] 126 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 127 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 132 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 133 | | &other_bounding_boxes, [INFO] [stdout] 134 | | &bounding_box, [INFO] [stdout] 135 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 172 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/intersection.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 117 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 132 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 133 | | &other_bounding_boxes, [INFO] [stdout] 134 | | &bounding_box, [INFO] [stdout] 135 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/intersection.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 117 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 132 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 133 | | &other_bounding_boxes, [INFO] [stdout] 134 | | &bounding_box, [INFO] [stdout] 135 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/intersection.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 133 | | &other_bounding_boxes, [INFO] [stdout] 134 | | &bounding_box, [INFO] [stdout] 135 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/polygon/symmetric_difference.rs:123:36 [INFO] [stdout] | [INFO] [stdout] 113 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] ... [INFO] [stdout] 123 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 127 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &other_bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 167 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/symmetric_difference.rs:127:49 [INFO] [stdout] | [INFO] [stdout] 109 | other: &Multipolygon, [INFO] [stdout] | ----- - let's call the lifetime of this reference `'1` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 127 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &other_bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/symmetric_difference.rs:127:49 [INFO] [stdout] | [INFO] [stdout] 127 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &other_bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `other_polygons` because it is borrowed [INFO] [stdout] --> src/geometries/polygon/symmetric_difference.rs:135:17 [INFO] [stdout] | [INFO] [stdout] 113 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] ... [INFO] [stdout] 123 | let other_bounding_boxes = other_polygons [INFO] [stdout] | -------------- borrow of `other_polygons` occurs here [INFO] [stdout] ... [INFO] [stdout] 127 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 128 | | &other_bounding_boxes, [INFO] [stdout] 129 | | &other_bounding_box, [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 135 | other_polygons.into_iter().cloned().collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^ move out of `other_polygons` occurs here [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] note: if `SliceSequence<'_, Polygon>` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/slice_sequence.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct SliceSequence<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] | [INFO] [stdout] ::: src/geometries/polygon/symmetric_difference.rs:123:36 [INFO] [stdout] | [INFO] [stdout] 123 | let other_bounding_boxes = other_polygons [INFO] [stdout] | -------------- you could clone this value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:151:36 [INFO] [stdout] | [INFO] [stdout] 141 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 151 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 155 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 156 | | &other_bounding_boxes, [INFO] [stdout] 157 | | &bounding_box, [INFO] [stdout] 158 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 197 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/polygon/union.rs:117:36 [INFO] [stdout] | [INFO] [stdout] 107 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] ... [INFO] [stdout] 117 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 121 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &other_bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 162 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:155:49 [INFO] [stdout] | [INFO] [stdout] 138 | fn symmetric_difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 155 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 156 | | &other_bounding_boxes, [INFO] [stdout] 157 | | &bounding_box, [INFO] [stdout] 158 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/polygon/union.rs:121:49 [INFO] [stdout] | [INFO] [stdout] 104 | fn union(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'1` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 121 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &other_bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:155:49 [INFO] [stdout] | [INFO] [stdout] 138 | fn symmetric_difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 155 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 156 | | &other_bounding_boxes, [INFO] [stdout] 157 | | &bounding_box, [INFO] [stdout] 158 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/polygon/union.rs:121:49 [INFO] [stdout] | [INFO] [stdout] 121 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &other_bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:155:49 [INFO] [stdout] | [INFO] [stdout] 155 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 156 | | &other_bounding_boxes, [INFO] [stdout] 157 | | &bounding_box, [INFO] [stdout] 158 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `other_polygons` because it is borrowed [INFO] [stdout] --> src/geometries/polygon/union.rs:129:17 [INFO] [stdout] | [INFO] [stdout] 107 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] ... [INFO] [stdout] 117 | let other_bounding_boxes = other_polygons [INFO] [stdout] | -------------- borrow of `other_polygons` occurs here [INFO] [stdout] ... [INFO] [stdout] 121 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 122 | | &other_bounding_boxes, [INFO] [stdout] 123 | | &other_bounding_box, [INFO] [stdout] 124 | | ); [INFO] [stdout] | |_________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 129 | other_polygons.into_iter().cloned().collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^ move out of `other_polygons` occurs here [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] note: if `SliceSequence<'_, Polygon>` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/slice_sequence.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct SliceSequence<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] | [INFO] [stdout] ::: src/geometries/polygon/union.rs:117:36 [INFO] [stdout] | [INFO] [stdout] 117 | let other_bounding_boxes = other_polygons [INFO] [stdout] | -------------- you could clone this value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:233:36 [INFO] [stdout] | [INFO] [stdout] 223 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 233 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 237 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 238 | | &other_bounding_boxes, [INFO] [stdout] 239 | | &bounding_box, [INFO] [stdout] 240 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 279 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:237:49 [INFO] [stdout] | [INFO] [stdout] 218 | self, [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 237 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 238 | | &other_bounding_boxes, [INFO] [stdout] 239 | | &bounding_box, [INFO] [stdout] 240 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:237:49 [INFO] [stdout] | [INFO] [stdout] 219 | other: &Multisegment, [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 237 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 238 | | &other_bounding_boxes, [INFO] [stdout] 239 | | &bounding_box, [INFO] [stdout] 240 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:237:49 [INFO] [stdout] | [INFO] [stdout] 237 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 238 | | &other_bounding_boxes, [INFO] [stdout] 239 | | &bounding_box, [INFO] [stdout] 240 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:171:49 [INFO] [stdout] | [INFO] [stdout] 161 | fn difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 171 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 172 | | &other_segments [INFO] [stdout] 173 | | .iter() [INFO] [stdout] 174 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 175 | | .collect::>(), [INFO] [stdout] 176 | | &bounding_box, [INFO] [stdout] 177 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:171:49 [INFO] [stdout] | [INFO] [stdout] 161 | fn difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 171 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 172 | | &other_segments [INFO] [stdout] 173 | | .iter() [INFO] [stdout] 174 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 175 | | .collect::>(), [INFO] [stdout] 176 | | &bounding_box, [INFO] [stdout] 177 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/difference.rs:171:49 [INFO] [stdout] | [INFO] [stdout] 171 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 172 | | &other_segments [INFO] [stdout] 173 | | .iter() [INFO] [stdout] 174 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 175 | | .collect::>(), [INFO] [stdout] 176 | | &bounding_box, [INFO] [stdout] 177 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/segment/difference.rs:172:14 [INFO] [stdout] | [INFO] [stdout] 170 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 171 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 172 | | &other_segments [INFO] [stdout] | | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] 173 | | .iter() [INFO] [stdout] 174 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 175 | | .collect::>(), [INFO] [stdout] 176 | | &bounding_box, [INFO] [stdout] 177 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 207 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/segment/difference.rs:234:36 [INFO] [stdout] | [INFO] [stdout] 233 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 234 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 239 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 240 | | &other_bounding_boxes, [INFO] [stdout] 241 | | &bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 273 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 224 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 239 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 240 | | &other_bounding_boxes, [INFO] [stdout] 241 | | &bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 224 | fn difference(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 239 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 240 | | &other_bounding_boxes, [INFO] [stdout] 241 | | &bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/difference.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 240 | | &other_bounding_boxes, [INFO] [stdout] 241 | | &bounding_box, [INFO] [stdout] 242 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:298:49 [INFO] [stdout] | [INFO] [stdout] 288 | fn difference(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 298 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 299 | | &other_segments [INFO] [stdout] 300 | | .iter() [INFO] [stdout] 301 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 302 | | .collect::>(), [INFO] [stdout] 303 | | &bounding_box, [INFO] [stdout] 304 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/difference.rs:298:49 [INFO] [stdout] | [INFO] [stdout] 288 | fn difference(self, other: &Multisegment) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 298 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 299 | | &other_segments [INFO] [stdout] 300 | | .iter() [INFO] [stdout] 301 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 302 | | .collect::>(), [INFO] [stdout] 303 | | &bounding_box, [INFO] [stdout] 304 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/difference.rs:298:49 [INFO] [stdout] | [INFO] [stdout] 298 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 299 | | &other_segments [INFO] [stdout] 300 | | .iter() [INFO] [stdout] 301 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 302 | | .collect::>(), [INFO] [stdout] 303 | | &bounding_box, [INFO] [stdout] 304 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/segment/difference.rs:299:14 [INFO] [stdout] | [INFO] [stdout] 297 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] 298 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 299 | | &other_segments [INFO] [stdout] | | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] 300 | | .iter() [INFO] [stdout] 301 | | .map(Bounded::to_bounding_box) [INFO] [stdout] 302 | | .collect::>(), [INFO] [stdout] 303 | | &bounding_box, [INFO] [stdout] 304 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 334 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_polygons` does not live long enough [INFO] [stdout] --> src/geometries/segment/intersection.rs:127:36 [INFO] [stdout] | [INFO] [stdout] 126 | let other_polygons = other.polygons(); [INFO] [stdout] | -------------- binding `other_polygons` declared here [INFO] [stdout] 127 | let other_bounding_boxes = other_polygons [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 132 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 133 | | &other_bounding_boxes, [INFO] [stdout] 134 | | &bounding_box, [INFO] [stdout] 135 | | ); [INFO] [stdout] | |_____________- argument requires that `other_polygons` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 172 | } [INFO] [stdout] | - `other_polygons` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/intersection.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 117 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 132 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 133 | | &other_bounding_boxes, [INFO] [stdout] 134 | | &bounding_box, [INFO] [stdout] 135 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/intersection.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 117 | fn intersection(self, other: &Multipolygon) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 132 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 133 | | &other_bounding_boxes, [INFO] [stdout] 134 | | &bounding_box, [INFO] [stdout] 135 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_____________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:594:39 [INFO] [stdout] | [INFO] [stdout] 594 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/intersection.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | / to_boxes_ids_with_common_continuum( [INFO] [stdout] 133 | | &other_bounding_boxes, [INFO] [stdout] 134 | | &bounding_box, [INFO] [stdout] 135 | | ); [INFO] [stdout] | |_____________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:151:36 [INFO] [stdout] | [INFO] [stdout] 141 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 151 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 155 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 156 | | &other_bounding_boxes, [INFO] [stdout] 157 | | &bounding_box, [INFO] [stdout] 158 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 197 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:155:49 [INFO] [stdout] | [INFO] [stdout] 138 | fn symmetric_difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 155 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 156 | | &other_bounding_boxes, [INFO] [stdout] 157 | | &bounding_box, [INFO] [stdout] 158 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:155:49 [INFO] [stdout] | [INFO] [stdout] 138 | fn symmetric_difference(self, other: &Contour) -> Self::Output { [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 155 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 156 | | &other_bounding_boxes, [INFO] [stdout] 157 | | &bounding_box, [INFO] [stdout] 158 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:155:49 [INFO] [stdout] | [INFO] [stdout] 155 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 156 | | &other_bounding_boxes, [INFO] [stdout] 157 | | &bounding_box, [INFO] [stdout] 158 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `other_segments` does not live long enough [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:233:36 [INFO] [stdout] | [INFO] [stdout] 223 | let other_segments = other.segments(); [INFO] [stdout] | -------------- binding `other_segments` declared here [INFO] [stdout] ... [INFO] [stdout] 233 | let other_bounding_boxes = other_segments [INFO] [stdout] | ^^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 237 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 238 | | &other_bounding_boxes, [INFO] [stdout] 239 | | &bounding_box, [INFO] [stdout] 240 | | ); [INFO] [stdout] | |_________- argument requires that `other_segments` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 279 | } [INFO] [stdout] | - `other_segments` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:237:49 [INFO] [stdout] | [INFO] [stdout] 218 | self, [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | `self` is a reference that is only valid in the method body [INFO] [stdout] | has type `&'1 Segment` [INFO] [stdout] ... [INFO] [stdout] 237 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 238 | | &other_bounding_boxes, [INFO] [stdout] 239 | | &bounding_box, [INFO] [stdout] 240 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`self` escapes the method body here [INFO] [stdout] | argument requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of method [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:237:49 [INFO] [stdout] | [INFO] [stdout] 219 | other: &Multisegment, [INFO] [stdout] | ----- - let's call the lifetime of this reference `'2` [INFO] [stdout] | | [INFO] [stdout] | `other` is a reference that is only valid in the method body [INFO] [stdout] ... [INFO] [stdout] 237 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 238 | | &other_bounding_boxes, [INFO] [stdout] 239 | | &bounding_box, [INFO] [stdout] 240 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_________`other` escapes the method body here [INFO] [stdout] | argument requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/operations.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | for<'a> &'a bounded::Box: Relatable, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implementation of `Relatable` is not general enough [INFO] [stdout] --> src/geometries/segment/symmetric_difference.rs:237:49 [INFO] [stdout] | [INFO] [stdout] 237 | let other_boxes_have_common_continuum = to_boxes_have_common_continuum( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 238 | | &other_bounding_boxes, [INFO] [stdout] 239 | | &bounding_box, [INFO] [stdout] 240 | | ); [INFO] [stdout] | |_________^ implementation of `Relatable` is not general enough [INFO] [stdout] | [INFO] [stdout] = note: `Relatable` would have to be implemented for the type `&'0 bounded::types::Box<&Scalar>`, for any lifetime `'0`... [INFO] [stdout] = note: ...but `Relatable` is actually implemented for the type `&'1 bounded::types::Box<&'1 Scalar>`, for some specific lifetime `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 173 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0505, E0521, E0597. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0505`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rene` (lib) due to 174 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 173 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0505, E0521, E0597. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0505`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rene` (lib test) due to 174 previous errors [INFO] running `Command { std: "docker" "inspect" "d4644fdec474f83ebeb1fb16f1d1e07fc45f823a72dba3f8c89e58152ae04b35", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d4644fdec474f83ebeb1fb16f1d1e07fc45f823a72dba3f8c89e58152ae04b35", kill_on_drop: false }` [INFO] [stdout] d4644fdec474f83ebeb1fb16f1d1e07fc45f823a72dba3f8c89e58152ae04b35