[INFO] cloning repository https://github.com/Shfty/glasgae [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Shfty/glasgae" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShfty%2Fglasgae", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShfty%2Fglasgae'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 304dee4503c66676affb17edb6809e9b211464af [INFO] checking Shfty/glasgae against try#b6bca0d7327839b5e3f7a7779947cb9113d08917+rustflags=-Zstrict-projection-item-bounds for 150662-leaf [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShfty%2Fglasgae" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Shfty/glasgae [INFO] finished tweaking git repo https://github.com/Shfty/glasgae [INFO] tweaked toml for git repo https://github.com/Shfty/glasgae written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Shfty/glasgae on toolchain b6bca0d7327839b5e3f7a7779947cb9113d08917 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b6bca0d7327839b5e3f7a7779947cb9113d08917" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Shfty/glasgae already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b6bca0d7327839b5e3f7a7779947cb9113d08917" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b6bca0d7327839b5e3f7a7779947cb9113d08917" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 258be671c5e9a70b5ebc0eebf833a029fbf7ed8f505b599b37ad8ee7e4444c9c [INFO] running `Command { std: "docker" "start" "-a" "258be671c5e9a70b5ebc0eebf833a029fbf7ed8f505b599b37ad8ee7e4444c9c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "258be671c5e9a70b5ebc0eebf833a029fbf7ed8f505b599b37ad8ee7e4444c9c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "258be671c5e9a70b5ebc0eebf833a029fbf7ed8f505b599b37ad8ee7e4444c9c", kill_on_drop: false }` [INFO] [stdout] 258be671c5e9a70b5ebc0eebf833a029fbf7ed8f505b599b37ad8ee7e4444c9c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Zstrict-projection-item-bounds" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b6bca0d7327839b5e3f7a7779947cb9113d08917" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3673421bf808f7c6d29c4948a412754ec11e2836b0a10dabe13950d9b5e2013e [INFO] running `Command { std: "docker" "start" "-a" "3673421bf808f7c6d29c4948a412754ec11e2836b0a10dabe13950d9b5e2013e", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.78 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling serde v1.0.197 [INFO] [stderr] Compiling base64 v0.21.7 [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling prettyplease v0.2.16 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Checking memchr v2.7.1 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking regex-syntax v0.8.2 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking utf8parse v0.2.1 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking anstyle-parse v0.2.3 [INFO] [stderr] Checking log v0.4.21 [INFO] [stderr] Checking anstyle-query v1.0.2 [INFO] [stderr] Checking anstyle v1.0.6 [INFO] [stderr] Checking colorchoice v1.0.0 [INFO] [stderr] Checking humantime v2.1.0 [INFO] [stderr] Checking anstream v0.6.13 [INFO] [stderr] Checking quote v1.0.35 [INFO] [stderr] Checking syn v2.0.52 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking regex-automata v0.4.6 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking regex v1.10.3 [INFO] [stderr] Checking env_filter v0.1.0 [INFO] [stderr] Checking env_logger v0.11.3 [INFO] [stderr] Compiling serde_derive v1.0.197 [INFO] [stderr] Compiling contracts v0.4.0 [INFO] [stderr] Checking vector-map v1.0.1 [INFO] [stderr] Compiling bitflags v2.4.2 [INFO] [stderr] Compiling ron v0.8.1 [INFO] [stderr] Compiling glasgae-kiss v0.1.0 (/opt/rustwide/workdir/crates/glasgae-kiss) [INFO] [stderr] Compiling glasgae-macros v0.1.0 (/opt/rustwide/workdir/crates/glasgae-macros) [INFO] [stdout] warning: unused import: `glasgae_kiss::*` [INFO] [stdout] --> crates/glasgae-macros/build.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use glasgae_kiss::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `read_operators` [INFO] [stdout] --> crates/glasgae-macros/src/op.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use glasgae_kiss::{read_operators, Fixity, Operator}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Spacing` [INFO] [stdout] --> crates/glasgae-macros/src/op.rs:3:19 [INFO] [stdout] | [INFO] [stdout] 3 | use proc_macro2::{Spacing, TokenStream as TokenStream2, TokenTree as TokenTree2}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `read_operators` [INFO] [stdout] --> crates/glasgae-macros/src/op.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use glasgae_kiss::{read_operators, Fixity, Operator}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Spacing` [INFO] [stdout] --> crates/glasgae-macros/src/op.rs:3:19 [INFO] [stdout] | [INFO] [stdout] 3 | use proc_macro2::{Spacing, TokenStream as TokenStream2, TokenTree as TokenTree2}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `read_operators` [INFO] [stdout] --> crates/glasgae-macros/src/op.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use glasgae_kiss::{read_operators, Fixity, Operator}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Spacing` [INFO] [stdout] --> crates/glasgae-macros/src/op.rs:3:19 [INFO] [stdout] | [INFO] [stdout] 3 | use proc_macro2::{Spacing, TokenStream as TokenStream2, TokenTree as TokenTree2}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking glasgae v0.3.0 (/opt/rustwide/workdir/crates/glasgae) [INFO] [stdout] warning: unused imports: `derive_applicative` and `derive_functor` [INFO] [stdout] --> crates/glasgae/src/base/control/zipper/mod.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::{derive_applicative, derive_functor, derive_pointed, derive_with_pointed, prelude::*}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:1 [INFO] [stdout] | [INFO] [stdout] 293 | / impl LiftA2 for F [INFO] [stdout] 294 | | where [INFO] [stdout] 295 | | F: Term + BifunT, [INFO] [stdout] 296 | | MA: Pointed [INFO] [stdout] ... | [INFO] [stdout] 304 | | B: Term, [INFO] [stdout] 305 | | C: Term, [INFO] [stdout] | |____________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:5 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:25 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `>` [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `>` [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:25 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `>` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `>` [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 301 | MB: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MC: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:25 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MC` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `>` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `>` [INFO] [stdout] help: consider further restricting type parameter `MC` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 302 | MC: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:25 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:290:25 [INFO] [stdout] | [INFO] [stdout] 290 | fn lift_a2(self) -> impl BifunT, WithPointedT>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:290:25 [INFO] [stdout] | [INFO] [stdout] 290 | fn lift_a2(self) -> impl BifunT, WithPointedT>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 301 | MB: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MC: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:290:25 [INFO] [stdout] | [INFO] [stdout] 290 | fn lift_a2(self) -> impl BifunT, WithPointedT>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MC` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MC` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 302 | MC: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:297:35 [INFO] [stdout] | [INFO] [stdout] 297 | + Functor, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box>` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:297:35 [INFO] [stdout] | [INFO] [stdout] 297 | + Functor, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:300:50 [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:301:29 [INFO] [stdout] | [INFO] [stdout] 301 | MB: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] help: there is an associated type with the same name [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: Self::WithPointed; [INFO] [stdout] | ++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MC: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MC` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MC` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:302:29 [INFO] [stdout] | [INFO] [stdout] 302 | MC: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:55 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:55 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 301 | MB: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MC: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:55 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^ the trait `with_pointed::WithPointed` is not implemented for `MC` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MC` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 302 | MC: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:233:1 [INFO] [stdout] | [INFO] [stdout] 233 | / impl FilterM for Vec [INFO] [stdout] 234 | | where [INFO] [stdout] 235 | | MA: Functor, Vec>, Pointed = bool, Mapped = MF> [INFO] [stdout] 236 | | + WithPointed, WithPointed = MB>, [INFO] [stdout] 237 | | MF: Applicative, Vec, WithA = MB, WithB = MB>, [INFO] [stdout] 238 | | MB: Pointed> + PureA, [INFO] [stdout] 239 | | A: Term, [INFO] [stdout] | |____________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:241:5 [INFO] [stdout] | [INFO] [stdout] 241 | fn filter_m(self, f: impl FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:235:59 [INFO] [stdout] | [INFO] [stdout] 235 | MA: Functor, Vec>, Pointed = bool, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::with_pointed::WithPointed, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, Vec>>` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:235:59 [INFO] [stdout] | [INFO] [stdout] 235 | MA: Functor, Vec>, Pointed = bool, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:237:60 [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:238:42 [INFO] [stdout] | [INFO] [stdout] 238 | MB: Pointed> + PureA + base::data::with_pointed::WithPointed, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:233:44 [INFO] [stdout] | [INFO] [stdout] 233 | impl FilterM for Vec [INFO] [stdout] | ^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `Vec` to implement `monad::FilterM` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:233:21 [INFO] [stdout] | [INFO] [stdout] 233 | impl FilterM for Vec [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:334:9 [INFO] [stdout] | [INFO] [stdout] 334 | MA: Functor, Vec>, Pointed = T> + WithPointed, WithPointed = MB>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-5620488875945882358.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: monad::ChainM` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:349:1 [INFO] [stdout] | [INFO] [stdout] 349 | pub trait LiftM: Term + FunctionT [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `monad::ChainM` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `ChainM` [INFO] [stdout] | [INFO] [stdout] 352 | MB: ReturnM + base::control::monad::ChainM, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:351:31 [INFO] [stdout] | [INFO] [stdout] 351 | MA: Monad, [INFO] [stdout] | ^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `monad::ChainM` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ChainM` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/monad/mod.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub trait ChainM: WithPointed { [INFO] [stdout] | ------ required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 352 | MB: ReturnM + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: monad::ChainM` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:70:19 [INFO] [stdout] | [INFO] [stdout] 70 | type Chained: ChainM; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `monad::ChainM` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `ChainM` [INFO] [stdout] | [INFO] [stdout] 352 | MB: ReturnM + base::control::monad::ChainM, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: monad::ChainM` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:361:1 [INFO] [stdout] | [INFO] [stdout] 361 | / impl LiftM for F [INFO] [stdout] 362 | | where [INFO] [stdout] 363 | | F: Term + FunctionT, [INFO] [stdout] 364 | | MA: Monad, [INFO] [stdout] 365 | | MB: ReturnM, [INFO] [stdout] 366 | | A: Term, [INFO] [stdout] 367 | | B: Term, [INFO] [stdout] | |____________^ the trait `monad::ChainM` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `ChainM` [INFO] [stdout] | [INFO] [stdout] 365 | MB: ReturnM + base::control::monad::ChainM, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: monad::ChainM` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:361:23 [INFO] [stdout] | [INFO] [stdout] 361 | impl LiftM for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ the trait `monad::ChainM` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `monad::LiftM` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:70:19 [INFO] [stdout] | [INFO] [stdout] 70 | type Chained: ChainM; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `LiftM` [INFO] [stdout] ... [INFO] [stdout] 349 | pub trait LiftM: Term + FunctionT [INFO] [stdout] | ----- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `ChainM` [INFO] [stdout] | [INFO] [stdout] 365 | MB: ReturnM + base::control::monad::ChainM, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `derive_applicative` and `derive_functor` [INFO] [stdout] --> crates/glasgae/src/base/control/zipper/mod.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::{derive_applicative, derive_functor, derive_pointed, derive_with_pointed, prelude::*}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as Pointed>::Pointed == B` [INFO] [stdout] --> crates/glasgae/src/base/data/bifunctor.rs:19:40 [INFO] [stdout] | [INFO] [stdout] 19 | pub trait Bifunctor: Bifmap + Functor [INFO] [stdout] | - ^^^^^^^^^^ expected type parameter `B`, found associated type [INFO] [stdout] | | [INFO] [stdout] | expected this type parameter [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `B` [INFO] [stdout] found associated type `<>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<>::WithBipointed as Functor>::Mapped as Pointed>::Pointed == B` [INFO] [stdout] --> crates/glasgae/src/base/data/bifunctor.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 19 | pub trait Bifunctor: Bifmap + Functor [INFO] [stdout] | - expected this type parameter [INFO] [stdout] 20 | where [INFO] [stdout] 21 | Self::WithBipointed: Functor, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `B`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `B` [INFO] [stdout] found associated type `<<>::WithBipointed as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `LinkedList` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `LinkedList` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, LinkedList>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, LinkedList> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, LinkedList> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `LinkedList` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `Vec` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `Vec` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, Vec>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `Vec` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `VecDeque` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `VecDeque` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, VecDeque>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, VecDeque> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, VecDeque> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `VecDeque` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `< as Functor>::Mapped as Pointed>::Pointed == A1` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 69 | impl<$key, $value, A1, A2> $crate::prelude::TraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] 70 | where [INFO] [stdout] 71 | Self: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `A1`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A1` [INFO] [stdout] found associated type `< as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as WithPointed<...>>::WithPointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ expected type parameter `V2`, found type parameter `V` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/mod.rs:87:28 [INFO] [stdout] | [INFO] [stdout] 87 | impl<$key, $value, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected type parameter [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:34 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | - found type parameter [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found type parameter `V` [INFO] [stdout] = note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-18229410013271617471.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:92:142 [INFO] [stdout] | [INFO] [stdout] 87 | ...e, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 92 | ...ude::MappedT<$value, $crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>>: $crate::prelude::AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found struct `BTreeMap` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | ...lue: $crate::prelude::Functor<$crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>, Pointed = $ty<$key, $value>> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, BTreeMap> + 'static)>` [INFO] [stdout] found associated type `<, BTreeMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, BTreeMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, BTreeMap> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-16546602979413001050.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == AD` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:189:56 [INFO] [stdout] | [INFO] [stdout] 186 | impl<$key, $value, AC, AD, AO> $crate::prelude::BitraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 189 | $crate::prelude::WithBipointedT: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `AD`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AD` [INFO] [stdout] found associated type `<< as with_bipointed::WithBipointed>::WithBipointed as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-13155674473736638412.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `>>>::Mapped: WithPointed<...>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] = help: the trait `with_pointed::WithPointed>` is not implemented for `, Vec> + 'static)>>>::Mapped` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-1563055449233760837.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `>>>::Mapped: WithPointed<...>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] = help: the trait `with_pointed::WithPointed>` is not implemented for `, Vec> + 'static)>>>::Mapped` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-8146267057371335777.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == AO` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:206:57 [INFO] [stdout] | [INFO] [stdout] 203 | impl<$key, $value, T, AO> $crate::prelude::BisequenceA for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 206 | $key::Mapped: $crate::prelude::AppA, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `AO`, found `Vec` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AO` [INFO] [stdout] found struct `Vec` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:207:45 [INFO] [stdout] | [INFO] [stdout] 207 | ...lude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$value>>, Pointed = $value>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-7256602995919031511.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:205:43 [INFO] [stdout] | [INFO] [stdout] 205 | ...relude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$key>>, Pointed = $key> $(+ $trait)*, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-14199322294243789389.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `T: Clone` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `T` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: required for `Vec` to implement `Clone` [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::clone::Clone [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `RefUnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::RefUnwindSafe [INFO] [stdout] | ++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may not be safely transferred across an unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may not be safely transferred across an unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `UnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::UnwindSafe [INFO] [stdout] | +++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be shared between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Sync` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Sync [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be sent between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be sent between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Send [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `< as Functor>::Mapped as Pointed>::Pointed == A1` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 69 | impl<$key, $value, A1, A2> $crate::prelude::TraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] 70 | where [INFO] [stdout] 71 | Self: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `A1`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A1` [INFO] [stdout] found associated type `< as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as WithPointed<...>>::WithPointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ expected type parameter `V2`, found type parameter `V` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/mod.rs:87:28 [INFO] [stdout] | [INFO] [stdout] 87 | impl<$key, $value, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected type parameter [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | - found type parameter [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found type parameter `V` [INFO] [stdout] = note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-14337060840777582860.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:92:142 [INFO] [stdout] | [INFO] [stdout] 87 | ...e, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 92 | ...ude::MappedT<$value, $crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>>: $crate::prelude::AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found struct `HashMap` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | ...lue: $crate::prelude::Functor<$crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>, Pointed = $ty<$key, $value>> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, HashMap> + 'static)>` [INFO] [stdout] found associated type `<, HashMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, HashMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, HashMap> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-8757075981284076059.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == AD` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:189:56 [INFO] [stdout] | [INFO] [stdout] 186 | impl<$key, $value, AC, AD, AO> $crate::prelude::BitraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 189 | $crate::prelude::WithBipointedT: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `AD`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AD` [INFO] [stdout] found associated type `<< as with_bipointed::WithBipointed>::WithBipointed as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-9493351166507842426.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == AO` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:206:57 [INFO] [stdout] | [INFO] [stdout] 203 | impl<$key, $value, T, AO> $crate::prelude::BisequenceA for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 206 | $key::Mapped: $crate::prelude::AppA, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `AO`, found `Vec` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AO` [INFO] [stdout] found struct `Vec` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:207:45 [INFO] [stdout] | [INFO] [stdout] 207 | ...lude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$value>>, Pointed = $value>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-7256602995919031511.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:205:43 [INFO] [stdout] | [INFO] [stdout] 205 | ...relude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$key>>, Pointed = $key> $(+ $trait)*, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-14199322294243789389.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `T: Clone` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `T` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: required for `Vec` to implement `Clone` [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::clone::Clone [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `RefUnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::RefUnwindSafe [INFO] [stdout] | ++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may not be safely transferred across an unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may not be safely transferred across an unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `UnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::UnwindSafe [INFO] [stdout] | +++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be shared between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Sync` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Sync [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be sent between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be sent between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Send [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `< as Functor>::Mapped as Pointed>::Pointed == A1` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 69 | impl<$key, $value, A1, A2> $crate::prelude::TraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] 70 | where [INFO] [stdout] 71 | Self: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `A1`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A1` [INFO] [stdout] found associated type `< as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as WithPointed<...>>::WithPointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ expected type parameter `V2`, found type parameter `V` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/mod.rs:87:28 [INFO] [stdout] | [INFO] [stdout] 87 | impl<$key, $value, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected type parameter [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | - found type parameter [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found type parameter `V` [INFO] [stdout] = note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-9603116111724062371.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:92:142 [INFO] [stdout] | [INFO] [stdout] 87 | ...e, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 92 | ...ude::MappedT<$value, $crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>>: $crate::prelude::AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found struct `vector_map::VecMap` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | ...lue: $crate::prelude::Functor<$crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>, Pointed = $ty<$key, $value>> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, vector_map::VecMap> + 'static)>` [INFO] [stdout] found associated type `<, vector_map::VecMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, vector_map::VecMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, vector_map::VecMap> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-16512115267690180962.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == AD` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:189:56 [INFO] [stdout] | [INFO] [stdout] 186 | impl<$key, $value, AC, AD, AO> $crate::prelude::BitraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 189 | $crate::prelude::WithBipointedT: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `AD`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AD` [INFO] [stdout] found associated type `<< as with_bipointed::WithBipointed>::WithBipointed as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-3325766877537491758.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == AO` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:206:57 [INFO] [stdout] | [INFO] [stdout] 203 | impl<$key, $value, T, AO> $crate::prelude::BisequenceA for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 206 | $key::Mapped: $crate::prelude::AppA, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `AO`, found `Vec` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AO` [INFO] [stdout] found struct `Vec` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:207:45 [INFO] [stdout] | [INFO] [stdout] 207 | ...lude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$value>>, Pointed = $value>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-7256602995919031511.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:1 [INFO] [stdout] | [INFO] [stdout] 293 | / impl LiftA2 for F [INFO] [stdout] 294 | | where [INFO] [stdout] 295 | | F: Term + BifunT, [INFO] [stdout] 296 | | MA: Pointed [INFO] [stdout] ... | [INFO] [stdout] 304 | | B: Term, [INFO] [stdout] 305 | | C: Term, [INFO] [stdout] | |____________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:5 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:205:43 [INFO] [stdout] | [INFO] [stdout] 205 | ...relude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$key>>, Pointed = $key> $(+ $trait)*, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-14199322294243789389.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `T: Clone` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `T` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: required for `Vec` to implement `Clone` [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::clone::Clone [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `RefUnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::RefUnwindSafe [INFO] [stdout] | ++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may not be safely transferred across an unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may not be safely transferred across an unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `UnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::UnwindSafe [INFO] [stdout] | +++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be shared between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Sync` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Sync [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be sent between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be sent between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Send [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:25 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `>` [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `>` [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:25 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `>` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `>` [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 301 | MB: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MC: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:25 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MC` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `>` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `>` [INFO] [stdout] help: consider further restricting type parameter `MC` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 302 | MC: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `BTreeSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:307:25 [INFO] [stdout] | [INFO] [stdout] 307 | fn lift_a2(self) -> impl BifunT { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `BTreeSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:290:25 [INFO] [stdout] | [INFO] [stdout] 290 | fn lift_a2(self) -> impl BifunT, WithPointedT>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:290:25 [INFO] [stdout] | [INFO] [stdout] 290 | fn lift_a2(self) -> impl BifunT, WithPointedT>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 301 | MB: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MC: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:290:25 [INFO] [stdout] | [INFO] [stdout] 290 | fn lift_a2(self) -> impl BifunT, WithPointedT>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MC` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MC` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 302 | MC: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:297:35 [INFO] [stdout] | [INFO] [stdout] 297 | + Functor, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box>` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:297:35 [INFO] [stdout] | [INFO] [stdout] 297 | + Functor, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, BTreeSet>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, BTreeSet> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, BTreeSet> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `BTreeSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:300:50 [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:301:29 [INFO] [stdout] | [INFO] [stdout] 301 | MB: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] help: there is an associated type with the same name [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: Self::WithPointed; [INFO] [stdout] | ++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MC: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MC` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MC` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:302:29 [INFO] [stdout] | [INFO] [stdout] 302 | MC: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:55 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 300 | MF: Applicative + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:55 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 301 | MB: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MC: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:55 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^ the trait `with_pointed::WithPointed` is not implemented for `MC` [INFO] [stdout] | [INFO] [stdout] note: required for `F` to implement `applicative::LiftA2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:293:34 [INFO] [stdout] | [INFO] [stdout] 293 | impl LiftA2 for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MC` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 302 | MC: Pointed + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `HashSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `HashSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, HashSet>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, HashSet> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, HashSet> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `HashSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `vector_map::set::VecSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `vector_map::set::VecSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, VecSet>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, VecSet>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, vector_map::set::VecSet> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, vector_map::set::VecSet> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `vector_map::set::VecSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/vec_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecSet<(X: Eq)>, insert); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | / impl TraverseT for Result [INFO] [stdout] 124 | | where [INFO] [stdout] 125 | | T: Term, [INFO] [stdout] 126 | | MA: Functor, Pointed = A, Mapped = MB>, [INFO] [stdout] 127 | | MB: PureA>, [INFO] [stdout] 128 | | E: Term, [INFO] [stdout] 129 | | A: Term, [INFO] [stdout] | |____________^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 131 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | type Value = A; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:133:5 [INFO] [stdout] | [INFO] [stdout] 133 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | fn traverse_t(self, f: impl FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required for `Result` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:123:23 [INFO] [stdout] | [INFO] [stdout] 123 | impl TraverseT for Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:135:33 [INFO] [stdout] | [INFO] [stdout] 135 | fn traverse_t(self, f: impl FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(T)` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(T)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:135:33 [INFO] [stdout] | [INFO] [stdout] 135 | fn traverse_t(self, f: impl FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] note: required for `impl FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] help: consider restricting opaque type `impl FunctionT` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 135 | fn traverse_t(self, f: impl FunctionT + std::clone::Clone) -> MB { [INFO] [stdout] | +++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:126:44 [INFO] [stdout] | [INFO] [stdout] 126 | MA: Functor, Pointed = A, Mapped = MB>, [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 127 | MB: PureA> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:127:38 [INFO] [stdout] | [INFO] [stdout] 127 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:143:1 [INFO] [stdout] | [INFO] [stdout] 143 | / impl SequenceA<(), A2> for Result [INFO] [stdout] 144 | | where [INFO] [stdout] 145 | | A1: Functor, Pointed = A, Mapped = A2> [INFO] [stdout] 146 | | + WithPointed, Result>>, [INFO] [stdout] 147 | | A2: PureA>, [INFO] [stdout] 148 | | E: Term, [INFO] [stdout] 149 | | A: Term, [INFO] [stdout] | |____________^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 147 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:151:5 [INFO] [stdout] | [INFO] [stdout] 151 | type Inner = A1; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 147 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:151:18 [INFO] [stdout] | [INFO] [stdout] 151 | type Inner = A1; [INFO] [stdout] | ^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `Result` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:143:20 [INFO] [stdout] | [INFO] [stdout] 143 | impl SequenceA<(), A2> for Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 147 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:152:5 [INFO] [stdout] | [INFO] [stdout] 152 | type Value = PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 147 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:153:5 [INFO] [stdout] | [INFO] [stdout] 153 | type Sequenced = A2; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 147 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:155:5 [INFO] [stdout] | [INFO] [stdout] 155 | fn sequence_a(self) -> A1::Mapped { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 147 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:155:5 [INFO] [stdout] | [INFO] [stdout] 155 | fn sequence_a(self) -> A1::Mapped { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `Result` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:143:20 [INFO] [stdout] | [INFO] [stdout] 143 | impl SequenceA<(), A2> for Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 147 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:143:20 [INFO] [stdout] | [INFO] [stdout] 143 | impl SequenceA<(), A2> for Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `Result` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:143:20 [INFO] [stdout] | [INFO] [stdout] 143 | impl SequenceA<(), A2> for Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 147 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either/result.rs:145:44 [INFO] [stdout] | [INFO] [stdout] 145 | A1: Functor, Pointed = A, Mapped = A2> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 147 | A2: PureA> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:352:1 [INFO] [stdout] | [INFO] [stdout] 352 | / impl TraverseT for Either [INFO] [stdout] 353 | | where [INFO] [stdout] 354 | | A1: Functor, Pointed = A_, Mapped = A2>, [INFO] [stdout] 355 | | A2: PureA>, [INFO] [stdout] 356 | | E: Term, [INFO] [stdout] 357 | | A: Term, [INFO] [stdout] 358 | | A_: Term, [INFO] [stdout] | |_____________^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:360:5 [INFO] [stdout] | [INFO] [stdout] 360 | type Mapped = A1; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:360:19 [INFO] [stdout] | [INFO] [stdout] 360 | type Mapped = A1; [INFO] [stdout] | ^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `either::Either` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:352:24 [INFO] [stdout] | [INFO] [stdout] 352 | impl TraverseT for Either [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:361:5 [INFO] [stdout] | [INFO] [stdout] 361 | type Value = A_; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:361:18 [INFO] [stdout] | [INFO] [stdout] 361 | type Value = A_; [INFO] [stdout] | ^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `either::Either` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:352:24 [INFO] [stdout] | [INFO] [stdout] 352 | impl TraverseT for Either [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:362:5 [INFO] [stdout] | [INFO] [stdout] 362 | type Traversed = A2; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:362:22 [INFO] [stdout] | [INFO] [stdout] 362 | type Traversed = A2; [INFO] [stdout] | ^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `either::Either` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:352:24 [INFO] [stdout] | [INFO] [stdout] 352 | impl TraverseT for Either [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:364:5 [INFO] [stdout] | [INFO] [stdout] 364 | fn traverse_t(self, f: impl FunctionT) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `either::Either` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:352:24 [INFO] [stdout] | [INFO] [stdout] 352 | impl TraverseT for Either [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:364:33 [INFO] [stdout] | [INFO] [stdout] 364 | fn traverse_t(self, f: impl FunctionT) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(A)` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(A)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:364:33 [INFO] [stdout] | [INFO] [stdout] 364 | fn traverse_t(self, f: impl FunctionT) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] note: required for `impl FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] help: consider restricting opaque type `impl FunctionT` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 364 | fn traverse_t(self, f: impl FunctionT + std::clone::Clone) -> A2 { [INFO] [stdout] | +++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:354:46 [INFO] [stdout] | [INFO] [stdout] 354 | A1: Functor, Pointed = A_, Mapped = A2>, [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::with_pointed::WithPointed, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:355:39 [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:352:58 [INFO] [stdout] | [INFO] [stdout] 352 | impl TraverseT for Either [INFO] [stdout] | ^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `either::Either` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:352:24 [INFO] [stdout] | [INFO] [stdout] 352 | impl TraverseT for Either [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 355 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:372:1 [INFO] [stdout] | [INFO] [stdout] 372 | / impl SequenceA<(), A2> for Either [INFO] [stdout] 373 | | where [INFO] [stdout] 374 | | A1: Functor, Pointed = A, Mapped = A2> [INFO] [stdout] 375 | | + WithPointed, Either>>, [INFO] [stdout] 376 | | A2: PureA>, [INFO] [stdout] 377 | | E: Term, [INFO] [stdout] 378 | | A: Term, [INFO] [stdout] | |____________^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 376 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:380:5 [INFO] [stdout] | [INFO] [stdout] 380 | type Inner = A1; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 376 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:380:18 [INFO] [stdout] | [INFO] [stdout] 380 | type Inner = A1; [INFO] [stdout] | ^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `either::Either` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:372:20 [INFO] [stdout] | [INFO] [stdout] 372 | impl SequenceA<(), A2> for Either [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 376 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:381:5 [INFO] [stdout] | [INFO] [stdout] 381 | type Value = A; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 376 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:382:5 [INFO] [stdout] | [INFO] [stdout] 382 | type Sequenced = A2; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 376 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:384:5 [INFO] [stdout] | [INFO] [stdout] 384 | fn sequence_a(self) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 376 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:384:5 [INFO] [stdout] | [INFO] [stdout] 384 | fn sequence_a(self) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `either::Either` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:372:20 [INFO] [stdout] | [INFO] [stdout] 372 | impl SequenceA<(), A2> for Either [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 376 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:372:20 [INFO] [stdout] | [INFO] [stdout] 372 | impl SequenceA<(), A2> for Either [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `either::Either` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:372:20 [INFO] [stdout] | [INFO] [stdout] 372 | impl SequenceA<(), A2> for Either [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 376 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/either.rs:374:44 [INFO] [stdout] | [INFO] [stdout] 374 | A1: Functor, Pointed = A, Mapped = A2> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 376 | A2: PureA> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:233:1 [INFO] [stdout] | [INFO] [stdout] 233 | / impl FilterM for Vec [INFO] [stdout] 234 | | where [INFO] [stdout] 235 | | MA: Functor, Vec>, Pointed = bool, Mapped = MF> [INFO] [stdout] 236 | | + WithPointed, WithPointed = MB>, [INFO] [stdout] 237 | | MF: Applicative, Vec, WithA = MB, WithB = MB>, [INFO] [stdout] 238 | | MB: Pointed> + PureA, [INFO] [stdout] 239 | | A: Term, [INFO] [stdout] | |____________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:241:5 [INFO] [stdout] | [INFO] [stdout] 241 | fn filter_m(self, f: impl FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:235:59 [INFO] [stdout] | [INFO] [stdout] 235 | MA: Functor, Vec>, Pointed = bool, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::with_pointed::WithPointed, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, Vec>>` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:235:59 [INFO] [stdout] | [INFO] [stdout] 235 | MA: Functor, Vec>, Pointed = bool, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:237:60 [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:238:42 [INFO] [stdout] | [INFO] [stdout] 238 | MB: Pointed> + PureA + base::data::with_pointed::WithPointed, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:233:44 [INFO] [stdout] | [INFO] [stdout] 233 | impl FilterM for Vec [INFO] [stdout] | ^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `Vec` to implement `FilterM` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:233:21 [INFO] [stdout] | [INFO] [stdout] 233 | impl FilterM for Vec [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 237 | MF: Applicative, Vec, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:334:9 [INFO] [stdout] | [INFO] [stdout] 334 | MA: Functor, Vec>, Pointed = T> + WithPointed, WithPointed = MB>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-9436938135389448553.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: monad::ChainM` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:349:1 [INFO] [stdout] | [INFO] [stdout] 349 | pub trait LiftM: Term + FunctionT [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `monad::ChainM` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `ChainM` [INFO] [stdout] | [INFO] [stdout] 352 | MB: ReturnM + base::control::monad::ChainM, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:351:31 [INFO] [stdout] | [INFO] [stdout] 351 | MA: Monad, [INFO] [stdout] | ^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `monad::ChainM` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ChainM` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/monad/mod.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub trait ChainM: WithPointed { [INFO] [stdout] | ------ required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 352 | MB: ReturnM + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: monad::ChainM` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:70:19 [INFO] [stdout] | [INFO] [stdout] 70 | type Chained: ChainM; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `monad::ChainM` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `ChainM` [INFO] [stdout] | [INFO] [stdout] 352 | MB: ReturnM + base::control::monad::ChainM, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: monad::ChainM` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:361:1 [INFO] [stdout] | [INFO] [stdout] 361 | / impl LiftM for F [INFO] [stdout] 362 | | where [INFO] [stdout] 363 | | F: Term + FunctionT, [INFO] [stdout] 364 | | MA: Monad, [INFO] [stdout] 365 | | MB: ReturnM, [INFO] [stdout] 366 | | A: Term, [INFO] [stdout] 367 | | B: Term, [INFO] [stdout] | |____________^ the trait `monad::ChainM` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `ChainM` [INFO] [stdout] | [INFO] [stdout] 365 | MB: ReturnM + base::control::monad::ChainM, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: monad::ChainM` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:361:23 [INFO] [stdout] | [INFO] [stdout] 361 | impl LiftM for F [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ the trait `monad::ChainM` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `monad::LiftM` [INFO] [stdout] --> crates/glasgae/src/base/control/monad/mod.rs:70:19 [INFO] [stdout] | [INFO] [stdout] 70 | type Chained: ChainM; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `LiftM` [INFO] [stdout] ... [INFO] [stdout] 349 | pub trait LiftM: Term + FunctionT [INFO] [stdout] | ----- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `ChainM` [INFO] [stdout] | [INFO] [stdout] 365 | MB: ReturnM + base::control::monad::ChainM, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | + Functor, Identity>> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, functor::identity::Identity> + 'static)>` [INFO] [stdout] found associated type `<, functor::identity::Identity> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, functor::identity::Identity> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, functor::identity::Identity> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-11215026087432797305.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:100:1 [INFO] [stdout] | [INFO] [stdout] 100 | / impl SequenceA<(), MB> for Identity [INFO] [stdout] 101 | | where [INFO] [stdout] 102 | | MA: PureA [INFO] [stdout] 103 | | + Functor, Identity>, Mapped = MF> [INFO] [stdout] ... | [INFO] [stdout] 106 | | A: Monoid, [INFO] [stdout] 107 | | MB: PureA>, [INFO] [stdout] | |_____________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 109 | type Inner = MA; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:109:18 [INFO] [stdout] | [INFO] [stdout] 109 | type Inner = MA; [INFO] [stdout] | ^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `functor::identity::Identity` to implement `traversable::SequenceA<(), MB>` [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:100:21 [INFO] [stdout] | [INFO] [stdout] 100 | impl SequenceA<(), MB> for Identity [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | type Value = A; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | type Sequenced = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:113:5 [INFO] [stdout] | [INFO] [stdout] 113 | fn sequence_a(self) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:113:5 [INFO] [stdout] | [INFO] [stdout] 113 | fn sequence_a(self) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `functor::identity::Identity` to implement `traversable::SequenceA<(), MB>` [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:100:21 [INFO] [stdout] | [INFO] [stdout] 100 | impl SequenceA<(), MB> for Identity [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:100:21 [INFO] [stdout] | [INFO] [stdout] 100 | impl SequenceA<(), MB> for Identity [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `functor::identity::Identity` to implement `traversable::SequenceA<(), MB>` [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:100:21 [INFO] [stdout] | [INFO] [stdout] 100 | impl SequenceA<(), MB> for Identity [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:103:55 [INFO] [stdout] | [INFO] [stdout] 103 | + Functor, Identity>, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, Identity>>` [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:103:55 [INFO] [stdout] | [INFO] [stdout] 103 | + Functor, Identity>, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, functor::identity::Identity> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, functor::identity::Identity> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:105:70 [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:100:43 [INFO] [stdout] | [INFO] [stdout] 100 | impl SequenceA<(), MB> for Identity [INFO] [stdout] | ^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] note: required for `functor::identity::Identity` to implement `traversable::SequenceA<(), MB>` [INFO] [stdout] --> crates/glasgae/src/base/data/functor/identity.rs:100:21 [INFO] [stdout] | [INFO] [stdout] 100 | impl SequenceA<(), MB> for Identity [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 105 | MF: Applicative, Identity, WithA = MB, WithB = MB> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:110:1 [INFO] [stdout] | [INFO] [stdout] 110 | / impl TraverseT for Option [INFO] [stdout] 111 | | where [INFO] [stdout] 112 | | MA: Functor, Pointed = A, Mapped = MB>, [INFO] [stdout] 113 | | MB: PureA>, [INFO] [stdout] 114 | | T: Term, [INFO] [stdout] 115 | | A: Term, [INFO] [stdout] | |____________^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 113 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 113 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 118 | type Value = A; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 113 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 113 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required for `Option` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:110:20 [INFO] [stdout] | [INFO] [stdout] 110 | impl TraverseT for Option [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 113 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:121:33 [INFO] [stdout] | [INFO] [stdout] 121 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required for `Option` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:110:20 [INFO] [stdout] | [INFO] [stdout] 110 | impl TraverseT for Option [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 113 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:121:33 [INFO] [stdout] | [INFO] [stdout] 121 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(T)` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(T)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:121:33 [INFO] [stdout] | [INFO] [stdout] 121 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] note: required for `impl FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] help: consider restricting opaque type `impl FunctionT` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 121 | fn traverse_t(self, f: impl FunctionT + std::clone::Clone) -> Self::Traversed { [INFO] [stdout] | +++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:112:41 [INFO] [stdout] | [INFO] [stdout] 112 | MA: Functor, Pointed = A, Mapped = MB>, [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 113 | MB: PureA> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:113:35 [INFO] [stdout] | [INFO] [stdout] 113 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:129:1 [INFO] [stdout] | [INFO] [stdout] 129 | / impl SequenceA<(), A2> for Option [INFO] [stdout] 130 | | where [INFO] [stdout] 131 | | A1: Clone [INFO] [stdout] 132 | | + Functor, Pointed = A_, Mapped = A2> [INFO] [stdout] 133 | | + WithPointed, Option>>, [INFO] [stdout] 134 | | A_: Term, [INFO] [stdout] 135 | | A2: PureA>, [INFO] [stdout] | |____________________________________^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 135 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:137:5 [INFO] [stdout] | [INFO] [stdout] 137 | type Inner = A1; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 135 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:137:18 [INFO] [stdout] | [INFO] [stdout] 137 | type Inner = A1; [INFO] [stdout] | ^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `Option` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:129:18 [INFO] [stdout] | [INFO] [stdout] 129 | impl SequenceA<(), A2> for Option [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 135 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | type Value = PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 135 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | type Sequenced = A2; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 135 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | fn sequence_a(self) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 135 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | fn sequence_a(self) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `Option` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:129:18 [INFO] [stdout] | [INFO] [stdout] 129 | impl SequenceA<(), A2> for Option [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 135 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:129:18 [INFO] [stdout] | [INFO] [stdout] 129 | impl SequenceA<(), A2> for Option [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `Option` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:129:18 [INFO] [stdout] | [INFO] [stdout] 129 | impl SequenceA<(), A2> for Option [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 135 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe/option.rs:132:45 [INFO] [stdout] | [INFO] [stdout] 132 | + Functor, Pointed = A_, Mapped = A2> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 135 | A2: PureA> + base::data::with_pointed::WithPointed, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:162:1 [INFO] [stdout] | [INFO] [stdout] 162 | / impl TraverseT for Maybe [INFO] [stdout] 163 | | where [INFO] [stdout] 164 | | MA: Functor, Pointed = A, Mapped = MB>, [INFO] [stdout] 165 | | MB: PureA>, [INFO] [stdout] 166 | | T: Term, [INFO] [stdout] 167 | | A: Term, [INFO] [stdout] | |____________^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 165 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 169 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 165 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | type Value = A; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 165 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:171:5 [INFO] [stdout] | [INFO] [stdout] 171 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 165 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:173:5 [INFO] [stdout] | [INFO] [stdout] 173 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required for `data::maybe::Maybe` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:162:20 [INFO] [stdout] | [INFO] [stdout] 162 | impl TraverseT for Maybe [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 165 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:173:33 [INFO] [stdout] | [INFO] [stdout] 173 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required for `data::maybe::Maybe` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:162:20 [INFO] [stdout] | [INFO] [stdout] 162 | impl TraverseT for Maybe [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 165 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:173:33 [INFO] [stdout] | [INFO] [stdout] 173 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(T)` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(T)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:173:33 [INFO] [stdout] | [INFO] [stdout] 173 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] note: required for `impl FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] help: consider restricting opaque type `impl FunctionT` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 173 | fn traverse_t(self, f: impl FunctionT + std::clone::Clone) -> Self::Traversed { [INFO] [stdout] | +++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:164:40 [INFO] [stdout] | [INFO] [stdout] 164 | MA: Functor, Pointed = A, Mapped = MB>, [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 165 | MB: PureA> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:165:34 [INFO] [stdout] | [INFO] [stdout] 165 | MB: PureA> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:181:1 [INFO] [stdout] | [INFO] [stdout] 181 | / impl SequenceA<(), A2> for Maybe [INFO] [stdout] 182 | | where [INFO] [stdout] 183 | | A1: Functor, Pointed = A_, Mapped = A2> + WithPointed, Maybe>>, [INFO] [stdout] 184 | | A_: Term, [INFO] [stdout] 185 | | A2: PureA>, [INFO] [stdout] | |___________________________________^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 185 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | type Inner = A1; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 185 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:187:18 [INFO] [stdout] | [INFO] [stdout] 187 | type Inner = A1; [INFO] [stdout] | ^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `data::maybe::Maybe` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:181:18 [INFO] [stdout] | [INFO] [stdout] 181 | impl SequenceA<(), A2> for Maybe [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 185 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:188:5 [INFO] [stdout] | [INFO] [stdout] 188 | type Value = PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 185 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 189 | type Sequenced = A2; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 185 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 191 | fn sequence_a(self) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 185 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 191 | fn sequence_a(self) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `data::maybe::Maybe` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:181:18 [INFO] [stdout] | [INFO] [stdout] 181 | impl SequenceA<(), A2> for Maybe [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 185 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:181:18 [INFO] [stdout] | [INFO] [stdout] 181 | impl SequenceA<(), A2> for Maybe [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `data::maybe::Maybe` to implement `traversable::SequenceA<(), A2>` [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:181:18 [INFO] [stdout] | [INFO] [stdout] 181 | impl SequenceA<(), A2> for Maybe [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 185 | A2: PureA> + base::data::functor::Functor, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/maybe.rs:183:42 [INFO] [stdout] | [INFO] [stdout] 183 | A1: Functor, Pointed = A_, Mapped = A2> + WithPointed, Maybe>>, [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 185 | A2: PureA> + base::data::with_pointed::WithPointed, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as Pointed>::Pointed == B` [INFO] [stdout] --> crates/glasgae/src/base/data/bifunctor.rs:19:40 [INFO] [stdout] | [INFO] [stdout] 19 | pub trait Bifunctor: Bifmap + Functor [INFO] [stdout] | - ^^^^^^^^^^ expected type parameter `B`, found associated type [INFO] [stdout] | | [INFO] [stdout] | expected this type parameter [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `B` [INFO] [stdout] found associated type `<>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<>::WithBipointed as Functor>::Mapped as Pointed>::Pointed == B` [INFO] [stdout] --> crates/glasgae/src/base/data/bifunctor.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 19 | pub trait Bifunctor: Bifmap + Functor [INFO] [stdout] | - expected this type parameter [INFO] [stdout] 20 | where [INFO] [stdout] 21 | Self::WithBipointed: Functor, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `B`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `B` [INFO] [stdout] found associated type `<<>::WithBipointed as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == A1` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn traverse_t_default( [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 77 | This: Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `A1`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A1` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting this bound [INFO] [stdout] | [INFO] [stdout] 78 | AF: SequenceA, [INFO] [stdout] | ++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `This: with_pointed::WithPointed<::Pointed>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed<::Pointed>` is not implemented for `This` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `This` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:77:35 [INFO] [stdout] | [INFO] [stdout] 77 | This: Functor + base::data::with_pointed::WithPointed<::Pointed>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving ` as WithPointed<...>>::WithPointed == Vec<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | WithA = Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ type mismatch resolving ` as WithPointed<...>>::WithPointed == Vec<...>` [INFO] [stdout] | [INFO] [stdout] note: expected this to be `Vec>` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:27:32 [INFO] [stdout] | [INFO] [stdout] 27 | type WithPointed = $ty<$($_arg,)* U $(, $arg_)*>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | derive_with_pointed!(Vec<(X)>); [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] = note: expected struct `Vec>` [INFO] [stdout] found struct `Vec<> as pointed::Pointed>::Pointed>` [INFO] [stdout] = help: consider constraining the associated type `> as pointed::Pointed>::Pointed` to `RoseTree` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-6240046672477144490.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_with_pointed` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `> as Pointed>::Pointed == Vec>` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | WithA = Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ type mismatch resolving `> as Pointed>::Pointed == Vec>` [INFO] [stdout] | [INFO] [stdout] note: expected this to be `Vec>` [INFO] [stdout] --> crates/glasgae/src/base/data/pointed.rs:28:28 [INFO] [stdout] | [INFO] [stdout] 28 | type Pointed = $arg; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | derive_pointed!(Vec<(X)>); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] = note: expected struct `Vec>` [INFO] [stdout] found struct `RoseTree<_>` [INFO] [stdout] = note: this error originates in the macro `derive_pointed` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `> as Pointed>::Pointed == Vec>` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | WithA = Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ type mismatch resolving `> as Pointed>::Pointed == Vec>` [INFO] [stdout] | [INFO] [stdout] note: expected this to be `Vec>` [INFO] [stdout] --> crates/glasgae/src/base/data/pointed.rs:28:28 [INFO] [stdout] | [INFO] [stdout] 28 | type Pointed = $arg; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | derive_pointed!(Vec<(X)>); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] = note: expected struct `Vec>` [INFO] [stdout] found struct `RoseTree<_>` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_pointed` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving ` as WithPointed<...>>::WithPointed == Vec<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | WithA = Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ type mismatch resolving ` as WithPointed<...>>::WithPointed == Vec<...>` [INFO] [stdout] | [INFO] [stdout] note: expected this to be `Vec>` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:27:32 [INFO] [stdout] | [INFO] [stdout] 27 | type WithPointed = $ty<$($_arg,)* U $(, $arg_)*>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | derive_with_pointed!(Vec<(X)>); [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] = note: expected struct `Vec>` [INFO] [stdout] found struct `Vec<> as pointed::Pointed>::Pointed>` [INFO] [stdout] = help: consider constraining the associated type `> as pointed::Pointed>::Pointed` to `RoseTree` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:63 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-7899926155332549711.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_with_pointed` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `LinkedList` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `LinkedList` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: functor::Functor>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:1 [INFO] [stdout] | [INFO] [stdout] 120 | / impl TraverseT for RoseTree [INFO] [stdout] 121 | | where [INFO] [stdout] 122 | | T: Term, [INFO] [stdout] 123 | | A1: Pointed [INFO] [stdout] ... | [INFO] [stdout] 132 | | + WithPointed>, WithPointed = A2>, [INFO] [stdout] 133 | | AF3: Applicative>, Vec>, WithA = A2, WithB = A2>, [INFO] [stdout] | |_________________________________________________________________________________^ the trait `functor::Functor>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 133 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::functor::Functor>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:1 [INFO] [stdout] | [INFO] [stdout] 120 | / impl TraverseT for RoseTree [INFO] [stdout] 121 | | where [INFO] [stdout] 122 | | T: Term, [INFO] [stdout] 123 | | A1: Pointed [INFO] [stdout] ... | [INFO] [stdout] 132 | | + WithPointed>, WithPointed = A2>, [INFO] [stdout] 133 | | AF3: Applicative>, Vec>, WithA = A2, WithB = A2>, [INFO] [stdout] | |_________________________________________________________________________________^ the trait `functor::Functor` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: functor::Functor>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | type Mapped = A1; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 133 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::functor::Functor>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | type Mapped = A1; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: functor::Functor>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:136:5 [INFO] [stdout] | [INFO] [stdout] 136 | type Value = A; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 133 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::functor::Functor>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:136:5 [INFO] [stdout] | [INFO] [stdout] 136 | type Value = A; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: functor::Functor>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:137:5 [INFO] [stdout] | [INFO] [stdout] 137 | type Traversed = A3; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 133 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::functor::Functor>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:137:5 [INFO] [stdout] | [INFO] [stdout] 137 | type Traversed = A3; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | fn traverse_t(self, f: impl FunctionT) -> A3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] note: required for `RoseTree` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:34 [INFO] [stdout] | [INFO] [stdout] 120 | impl TraverseT for RoseTree [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, LinkedList>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, LinkedList> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, LinkedList> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | fn traverse_t(self, f: impl FunctionT) -> A3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `RoseTree` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:34 [INFO] [stdout] | [INFO] [stdout] 120 | impl TraverseT for RoseTree [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 129 | A2: PureA>> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A3: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | fn traverse_t(self, f: impl FunctionT) -> A3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A3` [INFO] [stdout] | [INFO] [stdout] note: required for `RoseTree` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:34 [INFO] [stdout] | [INFO] [stdout] 120 | impl TraverseT for RoseTree [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `LinkedList` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/linked_list.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(LinkedList<(X)>, push_back); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: functor::Functor>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | fn traverse_t(self, f: impl FunctionT) -> A3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] note: required for `RoseTree` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:34 [INFO] [stdout] | [INFO] [stdout] 120 | impl TraverseT for RoseTree [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 133 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::functor::Functor>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | fn traverse_t(self, f: impl FunctionT) -> A3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed>` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `RoseTree` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:34 [INFO] [stdout] | [INFO] [stdout] 120 | impl TraverseT for RoseTree [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 129 | A2: PureA>> + base::data::with_pointed::WithPointed>, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:139:33 [INFO] [stdout] | [INFO] [stdout] 139 | fn traverse_t(self, f: impl FunctionT) -> A3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `FnOnce(T)` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(T)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:139:33 [INFO] [stdout] | [INFO] [stdout] 139 | fn traverse_t(self, f: impl FunctionT) -> A3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] note: required for `impl FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] help: consider restricting opaque type `impl FunctionT` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 139 | fn traverse_t(self, f: impl FunctionT + std::clone::Clone) -> A3 { [INFO] [stdout] | +++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:124:60 [INFO] [stdout] | [INFO] [stdout] 124 | + Functor>, RoseTree>, Mapped = AF1> [INFO] [stdout] | ^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 127 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box>, RoseTree>>` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:124:60 [INFO] [stdout] | [INFO] [stdout] 124 | + Functor>, RoseTree>, Mapped = AF1> [INFO] [stdout] | ^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT>, RoseTree> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT>, RoseTree> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: with_pointed::WithPointed>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:131:65 [INFO] [stdout] | [INFO] [stdout] 131 | + Functor>, Vec>>, Mapped = AF3> [INFO] [stdout] | ^^^^^^^^^^^^ the trait `with_pointed::WithPointed>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 133 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::with_pointed::WithPointed>, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box>, Vec>>>` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:131:65 [INFO] [stdout] | [INFO] [stdout] 131 | + Functor>, Vec>>, Mapped = AF3> [INFO] [stdout] | ^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT>, Vec>> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT>, Vec>> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:127:76 [INFO] [stdout] | [INFO] [stdout] 127 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:129:42 [INFO] [stdout] | [INFO] [stdout] 129 | A2: PureA>> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A3: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `Vec` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: functor::Functor>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:133:81 [INFO] [stdout] | [INFO] [stdout] 133 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::functor::Functor>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed>` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:129:42 [INFO] [stdout] | [INFO] [stdout] 129 | A2: PureA>> + base::data::with_pointed::WithPointed>, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `Vec` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:60 [INFO] [stdout] | [INFO] [stdout] 120 | impl TraverseT for RoseTree [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] note: required for `RoseTree` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:34 [INFO] [stdout] | [INFO] [stdout] 120 | impl TraverseT for RoseTree [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 127 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: functor::Functor>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:60 [INFO] [stdout] | [INFO] [stdout] 120 | impl TraverseT for RoseTree [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] note: required for `RoseTree` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:120:34 [INFO] [stdout] | [INFO] [stdout] 120 | impl TraverseT for RoseTree [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 133 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::functor::Functor>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: functor::Functor>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:144:1 [INFO] [stdout] | [INFO] [stdout] 144 | / fn rose_tree_traverse( [INFO] [stdout] 145 | | RoseTree(x, xs): RoseTree, [INFO] [stdout] 146 | | f: impl FunctionT, [INFO] [stdout] 147 | | ) -> A3 [INFO] [stdout] ... | [INFO] [stdout] 159 | | + WithPointed>, WithPointed = A2>, [INFO] [stdout] 160 | | AF3: Applicative>, Vec>, WithA = A2, WithB = A2>, [INFO] [stdout] | |_________________________________________________________________________________^ the trait `functor::Functor>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 160 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::functor::Functor>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:144:1 [INFO] [stdout] | [INFO] [stdout] 144 | / fn rose_tree_traverse( [INFO] [stdout] 145 | | RoseTree(x, xs): RoseTree, [INFO] [stdout] 146 | | f: impl FunctionT, [INFO] [stdout] 147 | | ) -> A3 [INFO] [stdout] ... | [INFO] [stdout] 159 | | + WithPointed>, WithPointed = A2>, [INFO] [stdout] 160 | | AF3: Applicative>, Vec>, WithA = A2, WithB = A2>, [INFO] [stdout] | |_________________________________________________________________________________^ the trait `functor::Functor` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 154 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:151:11 [INFO] [stdout] | [INFO] [stdout] 151 | + Functor>, RoseTree>, Mapped = AF1> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 154 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box>, RoseTree>>` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:151:11 [INFO] [stdout] | [INFO] [stdout] 151 | + Functor>, RoseTree>, Mapped = AF1> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT>, RoseTree> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT>, RoseTree> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: with_pointed::WithPointed>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:158:11 [INFO] [stdout] | [INFO] [stdout] 158 | + Functor>, Vec>>, Mapped = AF3> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 160 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::with_pointed::WithPointed>, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, Vec>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `Vec` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(Vec<(X)>, push); [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `VecDeque` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `VecDeque` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box>, Vec>>>` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:158:11 [INFO] [stdout] | [INFO] [stdout] 158 | + Functor>, Vec>>, Mapped = AF3> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT>, Vec>> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT>, Vec>> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF1: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `AF1` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF1` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:154:76 [INFO] [stdout] | [INFO] [stdout] 154 | AF1: Applicative>, RoseTree, WithA = A2, WithB = A3> + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:156:42 [INFO] [stdout] | [INFO] [stdout] 156 | A2: PureA>> + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `AF3: functor::Functor>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor>` is not implemented for `AF3` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `AF3` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:160:81 [INFO] [stdout] | [INFO] [stdout] 160 | AF3: Applicative>, Vec>, WithA = A2, WithB = A2> + base::data::functor::Functor>, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed>` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/tree/rose_tree.rs:156:42 [INFO] [stdout] | [INFO] [stdout] 156 | A2: PureA>> + base::data::with_pointed::WithPointed>, [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == A` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/one.rs:88:35 [INFO] [stdout] | [INFO] [stdout] 84 | impl TraverseT for (T,) [INFO] [stdout] | - expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 88 | A1::Mapped: Applicative, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `A`, found `(A,)` [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A` [INFO] [stdout] found tuple `(A,)` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/one.rs:86:30 [INFO] [stdout] | [INFO] [stdout] 86 | A1: PureA + Functor> + WithPointed>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT<(A,), (A,)> + 'static)>` [INFO] [stdout] found associated type `< + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `< + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT<(A,), (A,)> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-7937475889649253713.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:57 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, VecDeque>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, VecDeque> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, VecDeque> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `VecDeque` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/list/vec_deque.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(VecDeque<(X)>, push_back); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA>, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as WithPointed<...>>::WithPointed == A1` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/one.rs:86:30 [INFO] [stdout] | [INFO] [stdout] 84 | impl TraverseT for (T,) [INFO] [stdout] | -- -- found type parameter [INFO] [stdout] | | [INFO] [stdout] | expected type parameter [INFO] [stdout] 85 | where [INFO] [stdout] 86 | A1: PureA + Functor> + WithPointed>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `A1`, found type parameter `A2` [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A1` [INFO] [stdout] found type parameter `A2` [INFO] [stdout] = note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:63 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-12145184547438574505.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `>>::Mapped: WithPointed<...>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] = help: the trait `with_pointed::WithPointed<(A,)>` is not implemented for ` + 'static)>>>::Mapped` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-17292479025095417770.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] help: consider further restricting the associated type [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/one.rs:91:41 [INFO] [stdout] | [INFO] [stdout] 91 | A2: PureA, + 'static)>>>::Mapped: with_pointed::WithPointed<(A,)> [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == A` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/one.rs:106:35 [INFO] [stdout] | [INFO] [stdout] 102 | impl SequenceA<(), A2> for (A1,) [INFO] [stdout] | - expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 106 | A1::Mapped: Applicative, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `A`, found `(A,)` [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A` [INFO] [stdout] found tuple `(A,)` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/one.rs:104:30 [INFO] [stdout] | [INFO] [stdout] 104 | A1: PureA + Functor> + WithPointed>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box>`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT<(A,), (A,)> + 'static)>` [INFO] [stdout] found associated type `< + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `< + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT<(A,), (A,)> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-4645621385743065221.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `< as Functor>::Mapped as Pointed>::Pointed == A1` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 69 | impl<$key, $value, A1, A2> $crate::prelude::TraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] 70 | where [INFO] [stdout] 71 | Self: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `A1`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A1` [INFO] [stdout] found associated type `< as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as WithPointed<...>>::WithPointed == A1` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/one.rs:104:30 [INFO] [stdout] | [INFO] [stdout] 102 | impl SequenceA<(), A2> for (A1,) [INFO] [stdout] | -- -- found type parameter [INFO] [stdout] | | [INFO] [stdout] | expected type parameter [INFO] [stdout] 103 | where [INFO] [stdout] 104 | A1: PureA + Functor> + WithPointed>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `A1`, found type parameter `A2` [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A1` [INFO] [stdout] found type parameter `A2` [INFO] [stdout] = note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:63 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-15272480942912559079.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `>>::Mapped: WithPointed<...>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] = help: the trait `with_pointed::WithPointed<(A,)>` is not implemented for ` + 'static)>>>::Mapped` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-8194c79139e38ab9.long-type-7577355575056651774.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] help: consider further restricting the associated type [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/one.rs:108:41 [INFO] [stdout] | [INFO] [stdout] 108 | A2: PureA, + 'static)>>>::Mapped: with_pointed::WithPointed<(A,)> [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as WithPointed<...>>::WithPointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ expected type parameter `V2`, found type parameter `V` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/mod.rs:87:28 [INFO] [stdout] | [INFO] [stdout] 87 | impl<$key, $value, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected type parameter [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:34 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | - found type parameter [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found type parameter `V` [INFO] [stdout] = note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-2836254073021640211.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:92:142 [INFO] [stdout] | [INFO] [stdout] 87 | ...e, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 92 | ...ude::MappedT<$value, $crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>>: $crate::prelude::AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found struct `BTreeMap` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:105:1 [INFO] [stdout] | [INFO] [stdout] 105 | / impl TraverseT for (L, R) [INFO] [stdout] 106 | | where [INFO] [stdout] 107 | | L: Term, [INFO] [stdout] 108 | | R: Term, [INFO] [stdout] 109 | | A1: Functor<(L, A), Pointed = A, Mapped = A2>, [INFO] [stdout] 110 | | A: Term, [INFO] [stdout] 111 | | A2: Term, [INFO] [stdout] | |_____________^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 111 | A2: Term + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:113:5 [INFO] [stdout] | [INFO] [stdout] 113 | type Mapped = A1; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 111 | A2: Term + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | ...lue: $crate::prelude::Functor<$crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>, Pointed = $ty<$key, $value>> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, BTreeMap> + 'static)>` [INFO] [stdout] found associated type `<, BTreeMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, BTreeMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, BTreeMap> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-2125689445298981459.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:114:5 [INFO] [stdout] | [INFO] [stdout] 114 | type Value = A; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 111 | A2: Term + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | type Traversed = A2; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 111 | A2: Term + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | fn traverse_t(self, f: impl FunctionT) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required for `(L, R)` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:105:23 [INFO] [stdout] | [INFO] [stdout] 105 | impl TraverseT for (L, R) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 111 | A2: Term + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:117:33 [INFO] [stdout] | [INFO] [stdout] 117 | fn traverse_t(self, f: impl FunctionT) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(R)` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(R)` [INFO] [stdout] found a closure with signature `fn(<(L, R) as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:117:33 [INFO] [stdout] | [INFO] [stdout] 117 | fn traverse_t(self, f: impl FunctionT) -> A2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl FunctionT` [INFO] [stdout] | [INFO] [stdout] note: required for `impl FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl FunctionT: function::FunctionT` [INFO] [stdout] help: consider restricting opaque type `impl FunctionT` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 117 | fn traverse_t(self, f: impl FunctionT + std::clone::Clone) -> A2 { [INFO] [stdout] | +++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:109:38 [INFO] [stdout] | [INFO] [stdout] 109 | A1: Functor<(L, A), Pointed = A, Mapped = A2>, [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 111 | A2: Term + base::data::with_pointed::WithPointed, [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == (L, A)` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:109:38 [INFO] [stdout] | [INFO] [stdout] 109 | A1: Functor<(L, A), Pointed = A, Mapped = A2>, [INFO] [stdout] | ^^^^^^^^^^^ expected `(L, A)`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected tuple `(L, A)` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `(L, A)` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `A2: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `A2` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `A2` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:111:13 [INFO] [stdout] | [INFO] [stdout] 111 | A2: Term + base::data::functor::Functor, [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<(L_, R) as Functor>::Mapped as Pointed>::Pointed == R_` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:174:5 [INFO] [stdout] | [INFO] [stdout] 166 | impl Bifunctor for (L, R) [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 174 | / fn bimap( [INFO] [stdout] 175 | | self, [INFO] [stdout] 176 | | fa: impl crate::prelude::FunctionT, [INFO] [stdout] 177 | | fb: impl crate::prelude::FunctionT, [INFO] [stdout] 178 | | ) -> crate::prelude::MappedT, R_> [INFO] [stdout] | |_________________________________________________________________________________________________^ expected type parameter `R_`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `R_` [INFO] [stdout] found associated type `<<(L_, R) as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == AD` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:189:56 [INFO] [stdout] | [INFO] [stdout] 186 | impl<$key, $value, AC, AD, AO> $crate::prelude::BitraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 189 | $crate::prelude::WithBipointedT: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `AD`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AD` [INFO] [stdout] found associated type `<< as with_bipointed::WithBipointed>::WithBipointed as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-12341237484057028104.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<(L_, R) as Functor>::Mapped as Pointed>::Pointed == R_` [INFO] [stdout] --> crates/glasgae/src/base/data/tuple/pair.rs:172:14 [INFO] [stdout] | [INFO] [stdout] 166 | impl Bifunctor for (L, R) [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 172 | (L_, R): Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `R_`, found associated type [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `R_` [INFO] [stdout] found associated type `<<(L_, R) as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `>>>::Mapped: WithPointed<...>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] = help: the trait `with_pointed::WithPointed>` is not implemented for `, Vec> + 'static)>>>::Mapped` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-11788220073919570265.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `>>>::Mapped: WithPointed<...>` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] = help: the trait `with_pointed::WithPointed>` is not implemented for `, Vec> + 'static)>>>::Mapped` [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-11564053256846647532.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == AO` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:206:57 [INFO] [stdout] | [INFO] [stdout] 203 | impl<$key, $value, T, AO> $crate::prelude::BisequenceA for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 206 | $key::Mapped: $crate::prelude::AppA, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `AO`, found `Vec` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AO` [INFO] [stdout] found struct `Vec` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:207:45 [INFO] [stdout] | [INFO] [stdout] 207 | ...lude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$value>>, Pointed = $value>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-3062738880124992070.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:205:43 [INFO] [stdout] | [INFO] [stdout] 205 | ...relude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$key>>, Pointed = $key> $(+ $trait)*, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-6118889689826360383.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `T: Clone` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `T` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: required for `Vec` to implement `Clone` [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::clone::Clone [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `RefUnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::RefUnwindSafe [INFO] [stdout] | ++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may not be safely transferred across an unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may not be safely transferred across an unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `UnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::UnwindSafe [INFO] [stdout] | +++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be shared between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Sync` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Sync [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be sent between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be sent between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/btree_map.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | derive_iterable_map!(BTreeMap, insert, Ord); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Send [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `< as Functor>::Mapped as Pointed>::Pointed == A1` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 69 | impl<$key, $value, A1, A2> $crate::prelude::TraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] 70 | where [INFO] [stdout] 71 | Self: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `A1`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A1` [INFO] [stdout] found associated type `< as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as WithPointed<...>>::WithPointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ expected type parameter `V2`, found type parameter `V` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/mod.rs:87:28 [INFO] [stdout] | [INFO] [stdout] 87 | impl<$key, $value, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected type parameter [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | - found type parameter [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found type parameter `V` [INFO] [stdout] = note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-14347761873682180310.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:92:142 [INFO] [stdout] | [INFO] [stdout] 87 | ...e, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 92 | ...ude::MappedT<$value, $crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>>: $crate::prelude::AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found struct `HashMap` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | ...lue: $crate::prelude::Functor<$crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>, Pointed = $ty<$key, $value>> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, HashMap> + 'static)>` [INFO] [stdout] found associated type `<, HashMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, HashMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, HashMap> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-7656827530151296356.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == AD` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:189:56 [INFO] [stdout] | [INFO] [stdout] 186 | impl<$key, $value, AC, AD, AO> $crate::prelude::BitraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 189 | $crate::prelude::WithBipointedT: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `AD`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AD` [INFO] [stdout] found associated type `<< as with_bipointed::WithBipointed>::WithBipointed as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-2097570749525038557.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == AO` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:206:57 [INFO] [stdout] | [INFO] [stdout] 203 | impl<$key, $value, T, AO> $crate::prelude::BisequenceA for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 206 | $key::Mapped: $crate::prelude::AppA, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `AO`, found `Vec` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AO` [INFO] [stdout] found struct `Vec` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:207:45 [INFO] [stdout] | [INFO] [stdout] 207 | ...lude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$value>>, Pointed = $value>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-3062738880124992070.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:205:43 [INFO] [stdout] | [INFO] [stdout] 205 | ...relude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$key>>, Pointed = $key> $(+ $trait)*, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-6118889689826360383.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `T: Clone` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `T` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: required for `Vec` to implement `Clone` [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::clone::Clone [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `RefUnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::RefUnwindSafe [INFO] [stdout] | ++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may not be safely transferred across an unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may not be safely transferred across an unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `UnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::UnwindSafe [INFO] [stdout] | +++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be shared between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Sync` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Sync [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be sent between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be sent between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/hash_map.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | derive_iterable_map!(HashMap, insert, Eq, Hash); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Send [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `< as Functor>::Mapped as Pointed>::Pointed == A1` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 69 | impl<$key, $value, A1, A2> $crate::prelude::TraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] 70 | where [INFO] [stdout] 71 | Self: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `A1`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A1` [INFO] [stdout] found associated type `< as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<>::Mapped as WithPointed<...>>::WithPointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/control/applicative.rs:129:57 [INFO] [stdout] | [INFO] [stdout] 129 | type WithA: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ expected type parameter `V2`, found type parameter `V` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/mod.rs:87:28 [INFO] [stdout] | [INFO] [stdout] 87 | impl<$key, $value, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected type parameter [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | - found type parameter [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found type parameter `V` [INFO] [stdout] = note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-3797053396306806441.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == V2` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:92:142 [INFO] [stdout] | [INFO] [stdout] 87 | ...e, V2> $crate::prelude::SequenceA<(), V2> for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 92 | ...ude::MappedT<$value, $crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>>: $crate::prelude::AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `V2` [INFO] [stdout] found struct `vector_map::VecMap` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | ...lue: $crate::prelude::Functor<$crate::prelude::Function<$ty<$key, $value>, $ty<$key, $value>>, Pointed = $ty<$key, $value>> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, vector_map::VecMap> + 'static)>` [INFO] [stdout] found associated type `<, vector_map::VecMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, vector_map::VecMap> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, vector_map::VecMap> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-5321771652273724869.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == AD` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:189:56 [INFO] [stdout] | [INFO] [stdout] 186 | impl<$key, $value, AC, AD, AO> $crate::prelude::BitraverseT for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 189 | $crate::prelude::WithBipointedT: $crate::prelude::Functor, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `AD`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AD` [INFO] [stdout] found associated type `<< as with_bipointed::WithBipointed>::WithBipointed as functor::Functor>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = note: you might be missing a type parameter or trait bound [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-1823244773441462031.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == AO` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:206:57 [INFO] [stdout] | [INFO] [stdout] 203 | impl<$key, $value, T, AO> $crate::prelude::BisequenceA for $ty<$key, $value> [INFO] [stdout] | -- expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 206 | $key::Mapped: $crate::prelude::AppA, [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `AO`, found `Vec` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `AO` [INFO] [stdout] found struct `Vec` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:207:45 [INFO] [stdout] | [INFO] [stdout] 207 | ...lude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$value>>, Pointed = $value>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-3062738880124992070.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `<<... as Functor<...>>::Mapped as Pointed>::Pointed == Box<...>` [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:205:43 [INFO] [stdout] | [INFO] [stdout] 205 | ...relude::Term + $crate::prelude::Functor<$crate::prelude::Function, Vec<$key>>, Pointed = $key> $(+ $trait)*, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box, Vec>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] found associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` [INFO] [stdout] = help: consider constraining the associated type `<, Vec> + 'static)>>>::Mapped as pointed::Pointed>::Pointed` to `Box<(dyn function::FunctionT, Vec> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/glasgae-1c4b71f778c4f728.long-type-6118889689826360383.txt' [INFO] [stdout] = note: consider using `--verbose` to print the full type name to the console [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `T: Clone` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `T` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: required for `Vec` to implement `Clone` [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::clone::Clone [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `RefUnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::RefUnwindSafe [INFO] [stdout] | ++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the type `T` may not be safely transferred across an unwind boundary [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` may not be safely transferred across an unwind boundary [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `UnwindSafe` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::panic::UnwindSafe [INFO] [stdout] | +++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be shared between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Sync` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Sync [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `T` cannot be sent between threads safely [INFO] [stdout] --> crates/glasgae/src/base/data/collection/map/mod.rs:209:40 [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `T` cannot be sent between threads safely [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/map/vec_map.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | derive_iterable_map!(VecMap, insert, PartialEq); [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required because it appears within the type `PhantomData` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/core/src/marker.rs:811:11 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/raw_vec/mod.rs:73:18 [INFO] [stdout] note: required because it appears within the type `Vec` [INFO] [stdout] --> /rustc/b6bca0d7327839b5e3f7a7779947cb9113d08917/library/alloc/src/vec/mod.rs:438:11 [INFO] [stdout] = note: this error originates in the macro `derive_iterable_map` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stdout] | [INFO] [stdout] 209 | AO: $crate::prelude::PureA>, T: std::marker::Send [INFO] [stdout] | ++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `BTreeSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `BTreeSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0275]: overflow evaluating the requirement `>::Chained == _` [INFO] [stdout] --> crates/glasgae/src/logger/state_logging.rs:125:1 [INFO] [stdout] | [INFO] [stdout] 125 | / impl StateLogger [INFO] [stdout] 126 | | where [INFO] [stdout] 127 | | LVL: Term, [INFO] [stdout] 128 | | MSG: Term, [INFO] [stdout] 129 | | MA: Monad, [INFO] [stdout] 130 | | MA::Chained: Monad<((), usize), Chained = MA>, [INFO] [stdout] | |__________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == Box, BTreeSet>>` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:135:98 [INFO] [stdout] | [INFO] [stdout] 135 | MA: $crate::prelude::Functor<$crate::prelude::Function<$ty, $ty>, Pointed = B, Mapped = MF> [INFO] [stdout] | ^^^^^^^^^^^ expected `Box, ...>>`, found associated type [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn function::FunctionT, BTreeSet> + 'static)>` [INFO] [stdout] found associated type `::Pointed` [INFO] [stdout] = help: consider constraining the associated type `::Pointed` to `Box<(dyn function::FunctionT, BTreeSet> + 'static)>` [INFO] [stdout] = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html [INFO] [stdout] note: required by a bound in `functor::Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Functor` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait Functor: WithPointed [INFO] [stdout] | ------- required by a bound in this trait [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:100 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `BTreeSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/btree_set.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | derive_traversable_iterable!(BTreeSet<(X: Ord)>, insert); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | / impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] 127 | | where [INFO] [stdout] 128 | | $( [INFO] [stdout] 129 | | $_arg: $crate::prelude::Term $(+ $_trait)*, [INFO] [stdout] ... | [INFO] [stdout] 139 | | B: $crate::prelude::Term $(+ $trait)*, [INFO] [stdout] 140 | | MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] | |______________________________________________________________________^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | type Mapped = MA; [INFO] [stdout] | ^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | type Value = $crate::prelude::PointedT; [INFO] [stdout] | ^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == A` [INFO] [stdout] --> crates/glasgae/src/logger/state_logging.rs:209:27 [INFO] [stdout] | [INFO] [stdout] 204 | impl AppA for StateLogger [INFO] [stdout] | - expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 209 | MF: Applicative [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `A`, found `(A, S)` [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `A` [INFO] [stdout] found tuple `(A, S)` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `::Pointed == B` [INFO] [stdout] --> crates/glasgae/src/logger/state_logging.rs:209:27 [INFO] [stdout] | [INFO] [stdout] 204 | impl AppA for StateLogger [INFO] [stdout] | - expected this type parameter [INFO] [stdout] ... [INFO] [stdout] 209 | MF: Applicative [INFO] [stdout] | ^^^^^^^^^^ expected type parameter `B`, found `(B, S)` [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `B` [INFO] [stdout] found tuple `(B, S)` [INFO] [stdout] note: required by a bound in `applicative::AppA` [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:50 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `AppA` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/control/applicative.rs:128:11 [INFO] [stdout] | [INFO] [stdout] 128 | pub trait AppA: WithPointed + WithPointed { [INFO] [stdout] | ---- required by a bound in this trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | type Traversed = MB; [INFO] [stdout] | ^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `HashSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | --------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `HashSet` to implement `traversable::TraverseT` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:126:57 [INFO] [stdout] | [INFO] [stdout] 126 | impl<$($_arg,)* $arg $(,$arg_)*, MA, MF, B, MB> $crate::prelude::TraverseT for $ty<$($_arg,)* $arg $(,$arg_)*> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ----------------------------------------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MB: base::data::with_pointed::WithPointed [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FnOnce(X)` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with signature `fn(X)` [INFO] [stdout] found a closure with signature `fn( as pointed::Pointed>::Pointed)` [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | -------------- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `impl crate::prelude::FunctionT: function::FunctionT` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:146:41 [INFO] [stdout] | [INFO] [stdout] 146 | fn traverse_t(self, f: impl $crate::prelude::FunctionT) -> MB { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `impl crate::prelude::FunctionT` [INFO] [stdout] | [INFO] [stdout] ::: crates/glasgae/src/base/data/collection/set/hash_set.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | derive_traversable_iterable!(HashSet<(X : Eq : Hash)>, insert); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `term::Term` [INFO] [stdout] --> crates/glasgae/src/base/data/term.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | impl Term for T where T: TermBase + Clone {} [INFO] [stdout] | ^^^^ ^ ----- unsatisfied trait bound introduced here [INFO] [stdout] note: required for `impl crate::prelude::FunctionT` to implement `function::FunctionT` [INFO] [stdout] --> crates/glasgae/src/base/data/function/mod.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | impl FunctionT for F [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^ [INFO] [stdout] 54 | where [INFO] [stdout] 55 | F: Term + FnOnce(A) -> B, [INFO] [stdout] | ---- unsatisfied trait bound introduced here [INFO] [stdout] note: the requirement `impl crate::prelude::FunctionT: function::FunctionT` appears on the `impl`'s method `traverse_t` but not on the corresponding trait's method [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait TraverseT: Pointed [INFO] [stdout] | --------- in this trait [INFO] [stdout] ... [INFO] [stdout] 69 | fn traverse_t(self, f: impl FunctionT) -> Self::Traversed; [INFO] [stdout] | ^^^^^^^^^^ this trait's method doesn't have the requirement `impl crate::prelude::FunctionT: function::FunctionT` [INFO] [stdout] = note: this error originates in the macro `derive_traversable_iterable` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MF: functor::Functor` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/functor/mod.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | type Mapped: Functor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `functor::Functor` is not implemented for `MF` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MF` with trait `Functor` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [INFO] [stdout] | [INFO] [stdout] 140 - MB: $crate::prelude::PureA> $(+ $trait)*, [INFO] [stdout] 140 + MB: $crate::prelude::PureA> $(+ $trait, MF: base::data::functor::Functor [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `MB: with_pointed::WithPointed` is not satisfied [INFO] [stdout] --> crates/glasgae/src/base/data/with_pointed.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | type WithPointed: WithPointed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `with_pointed::WithPointed` is not implemented for `MB` [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `MB` with trait `WithPointed` [INFO] [stdout] --> crates/glasgae/src/base/data/traversable.rs:140:68 [WARN] too many lines in the log, truncating it