[INFO] fetching crate rene 0.1.0... [INFO] checking rene-0.1.0 against master#e9271846294c4ee5bd7706df68180320c0b5ff20 for pr-119820-1 [INFO] extracting crate rene 0.1.0 into /workspace/builds/worker-1-tc1/source [INFO] validating manifest of crates.io crate rene 0.1.0 on toolchain e9271846294c4ee5bd7706df68180320c0b5ff20 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e9271846294c4ee5bd7706df68180320c0b5ff20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-1-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-1-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e9271846294c4ee5bd7706df68180320c0b5ff20" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e9271846294c4ee5bd7706df68180320c0b5ff20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded target-lexicon v0.12.13 [INFO] [stderr] Downloaded pyo3-macros v0.19.2 [INFO] [stderr] Downloaded indoc v1.0.9 [INFO] [stderr] Downloaded pyo3-macros-backend v0.19.2 [INFO] [stderr] Downloaded unindent v0.1.11 [INFO] [stderr] Downloaded memoffset v0.9.0 [INFO] [stderr] Downloaded pyo3-ffi v0.19.2 [INFO] [stderr] Downloaded pyo3-build-config v0.19.2 [INFO] [stderr] Downloaded pyo3 v0.19.2 [INFO] [stderr] Downloaded rithm v14.0.0 [INFO] [stderr] Downloaded traiter v4.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+e9271846294c4ee5bd7706df68180320c0b5ff20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9f90a5b550d67dab1bd51743415699c467f4956e09036d6bd0865e6062b82c56 [INFO] running `Command { std: "docker" "start" "-a" "9f90a5b550d67dab1bd51743415699c467f4956e09036d6bd0865e6062b82c56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9f90a5b550d67dab1bd51743415699c467f4956e09036d6bd0865e6062b82c56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9f90a5b550d67dab1bd51743415699c467f4956e09036d6bd0865e6062b82c56", kill_on_drop: false }` [INFO] [stdout] 9f90a5b550d67dab1bd51743415699c467f4956e09036d6bd0865e6062b82c56 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+e9271846294c4ee5bd7706df68180320c0b5ff20" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] dca92aa3ba91341d9471b23b80b6c7625dab0aa5fb27e15662fcde76777dba17 [INFO] running `Command { std: "docker" "start" "-a" "dca92aa3ba91341d9471b23b80b6c7625dab0aa5fb27e15662fcde76777dba17", kill_on_drop: false }` [INFO] [stderr] Compiling target-lexicon v0.12.13 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling proc-macro2 v1.0.76 [INFO] [stderr] Compiling libc v0.2.152 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling parking_lot_core v0.9.9 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking smallvec v1.12.0 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking unindent v0.1.11 [INFO] [stderr] Compiling indoc v1.0.9 [INFO] [stderr] Checking traiter v4.0.0 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling memoffset v0.9.0 [INFO] [stderr] Compiling pyo3-build-config v0.19.2 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Checking parking_lot v0.12.1 [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] warning: unused import: `to_unique_non_crossing_or_overlapping_segments` [INFO] [stdout] --> src/bentley_ottmann/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | to_unique_non_crossing_or_overlapping_segments, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `to_unique_non_crossing_or_overlapping_segments` [INFO] [stdout] --> src/bentley_ottmann/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | to_unique_non_crossing_or_overlapping_segments, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `point` [INFO] [stdout] --> src/lib.rs:1320:22 [INFO] [stdout] | [INFO] [stdout] 1320 | fn locate(&self, point: &PyExactPoint, py: Python) -> PyResult<&PyAny> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_point` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `point` [INFO] [stdout] --> src/lib.rs:1320:22 [INFO] [stdout] | [INFO] [stdout] 1320 | fn locate(&self, point: &PyExactPoint, py: Python) -> PyResult<&PyAny> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_point` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_unique_non_crossing_or_overlapping_segments` is never used [INFO] [stdout] --> src/bentley_ottmann/base.rs:97:15 [INFO] [stdout] | [INFO] [stdout] 97 | pub(crate) fn to_unique_non_crossing_or_overlapping_segments< [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_unique_non_crossing_or_overlapping_segments` is never used [INFO] [stdout] --> src/bentley_ottmann/base.rs:97:15 [INFO] [stdout] | [INFO] [stdout] 97 | pub(crate) fn to_unique_non_crossing_or_overlapping_segments< [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 40.93s [INFO] running `Command { std: "docker" "inspect" "dca92aa3ba91341d9471b23b80b6c7625dab0aa5fb27e15662fcde76777dba17", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dca92aa3ba91341d9471b23b80b6c7625dab0aa5fb27e15662fcde76777dba17", kill_on_drop: false }` [INFO] [stdout] dca92aa3ba91341d9471b23b80b6c7625dab0aa5fb27e15662fcde76777dba17 [INFO] checking rene-0.1.0 against try#b69bfeecc49bf5661cf54497638430035ff61aa4 for pr-119820-1 [INFO] extracting crate rene 0.1.0 into /workspace/builds/worker-1-tc2/source [INFO] validating manifest of crates.io crate rene 0.1.0 on toolchain b69bfeecc49bf5661cf54497638430035ff61aa4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b69bfeecc49bf5661cf54497638430035ff61aa4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-1-tc2/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-1-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b69bfeecc49bf5661cf54497638430035ff61aa4" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b69bfeecc49bf5661cf54497638430035ff61aa4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b69bfeecc49bf5661cf54497638430035ff61aa4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5624f4203e2bb14650d9182cced76a35bd8eafc21058064d0069030f5662fdfc [INFO] running `Command { std: "docker" "start" "-a" "5624f4203e2bb14650d9182cced76a35bd8eafc21058064d0069030f5662fdfc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5624f4203e2bb14650d9182cced76a35bd8eafc21058064d0069030f5662fdfc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5624f4203e2bb14650d9182cced76a35bd8eafc21058064d0069030f5662fdfc", kill_on_drop: false }` [INFO] [stdout] 5624f4203e2bb14650d9182cced76a35bd8eafc21058064d0069030f5662fdfc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b69bfeecc49bf5661cf54497638430035ff61aa4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c73353896912e765451f4e10f015a46573a82e9c6da14f541c1b73f4626679eb [INFO] running `Command { std: "docker" "start" "-a" "c73353896912e765451f4e10f015a46573a82e9c6da14f541c1b73f4626679eb", kill_on_drop: false }` [INFO] [stderr] Compiling target-lexicon v0.12.13 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling proc-macro2 v1.0.76 [INFO] [stderr] Compiling libc v0.2.152 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling parking_lot_core v0.9.9 [INFO] [stderr] Checking smallvec v1.12.0 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking unindent v0.1.11 [INFO] [stderr] Compiling indoc v1.0.9 [INFO] [stderr] Checking traiter v4.0.0 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling memoffset v0.9.0 [INFO] [stderr] Compiling pyo3-build-config v0.19.2 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Checking parking_lot v0.12.1 [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] warning: unused import: `to_unique_non_crossing_or_overlapping_segments` [INFO] [stdout] --> src/bentley_ottmann/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | to_unique_non_crossing_or_overlapping_segments, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `to_unique_non_crossing_or_overlapping_segments` [INFO] [stdout] --> src/bentley_ottmann/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | to_unique_non_crossing_or_overlapping_segments, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[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] [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[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] [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] | ---- [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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] warning: unused variable: `point` [INFO] [stdout] --> src/lib.rs:1320:22 [INFO] [stdout] | [INFO] [stdout] 1320 | fn locate(&self, point: &PyExactPoint, py: Python) -> PyResult<&PyAny> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_point` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[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] [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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[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] [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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_____________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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/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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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_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[E0308]: mismatched types [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] | |_________^ one type is more general than the other [INFO] [stdout] | [INFO] [stdout] = note: expected trait `for<'a> <&'a bounded::types::Box<&Scalar> as Relatable>` [INFO] [stdout] found trait `for<'a> <&'a bounded::types::Box<&'a Scalar> as Relatable>` [INFO] [stdout] note: the lifetime requirement is introduced here [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: aborting due to 173 previous errors; 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0505, E0521, E0597. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rene` (lib) due to 174 previous errors; 2 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unused variable: `point` [INFO] [stdout] --> src/lib.rs:1320:22 [INFO] [stdout] | [INFO] [stdout] 1320 | fn locate(&self, point: &PyExactPoint, py: Python) -> PyResult<&PyAny> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_point` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 173 previous errors; 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0505, E0521, E0597. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rene` (lib test) due to 174 previous errors; 2 warnings emitted [INFO] running `Command { std: "docker" "inspect" "c73353896912e765451f4e10f015a46573a82e9c6da14f541c1b73f4626679eb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c73353896912e765451f4e10f015a46573a82e9c6da14f541c1b73f4626679eb", kill_on_drop: false }` [INFO] [stdout] c73353896912e765451f4e10f015a46573a82e9c6da14f541c1b73f4626679eb