[INFO] cloning repository https://github.com/Ferdi265/lambda.rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Ferdi265/lambda.rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFerdi265%2Flambda.rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFerdi265%2Flambda.rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 051c2a4df876889df93a2743656305ea7b229dd6 [INFO] checking Ferdi265/lambda.rs against try#8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8 for pr-82565 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFerdi265%2Flambda.rs" "/workspace/builds/worker-2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Ferdi265/lambda.rs on toolchain 8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Ferdi265/lambda.rs [INFO] finished tweaking git repo https://github.com/Ferdi265/lambda.rs [INFO] tweaked toml for git repo https://github.com/Ferdi265/lambda.rs written to /workspace/builds/worker-2/source/Cargo.toml [INFO] crate git repo https://github.com/Ferdi265/lambda.rs already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "rustops/crates-build-env@sha256:f2f6bcd4b43ebee4e173f653a26493129bdb64017c85f916b780ca7fbdbaa79d" "/opt/rustwide/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8ccb8bda6ee5f93d3d94fa6a09a5e857cb87cc7e24b575bdcad5f2a31669d4f0 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "8ccb8bda6ee5f93d3d94fa6a09a5e857cb87cc7e24b575bdcad5f2a31669d4f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8ccb8bda6ee5f93d3d94fa6a09a5e857cb87cc7e24b575bdcad5f2a31669d4f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8ccb8bda6ee5f93d3d94fa6a09a5e857cb87cc7e24b575bdcad5f2a31669d4f0", kill_on_drop: false }` [INFO] [stdout] 8ccb8bda6ee5f93d3d94fa6a09a5e857cb87cc7e24b575bdcad5f2a31669d4f0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:f2f6bcd4b43ebee4e173f653a26493129bdb64017c85f916b780ca7fbdbaa79d" "/opt/rustwide/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 9439be71e7c00555a39a3f396aa01a6eb1fe8e1482d7711901d5622b26b83f2b [INFO] running `Command { std: "docker" "start" "-a" "9439be71e7c00555a39a3f396aa01a6eb1fe8e1482d7711901d5622b26b83f2b", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.31 [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Compiling ucd-trie v0.1.3 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling unicode-segmentation v1.6.0 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.2 [INFO] [stderr] Compiling proc-macro-error v1.0.2 [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling pest v2.1.3 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking clap v2.33.1 [INFO] [stderr] Compiling pest_meta v2.1.3 [INFO] [stderr] Compiling syn-mid v0.5.0 [INFO] [stderr] Compiling pest_generator v2.1.3 [INFO] [stderr] Compiling pest_derive v2.1.0 [INFO] [stderr] Compiling structopt-derive v0.4.8 [INFO] [stderr] Checking structopt v0.3.15 [INFO] [stderr] Checking lambda v0.2.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes [INFO] [stdout] --> src/lib.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(specialization)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(incomplete_features)]` on by default [INFO] [stdout] = note: see issue #31844 for more information [INFO] [stdout] = help: consider using `min_specialization` instead, which is more stable and complete [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes [INFO] [stdout] --> src/lib.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(specialization)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(incomplete_features)]` on by default [INFO] [stdout] = note: see issue #31844 for more information [INFO] [stdout] = help: consider using `min_specialization` instead, which is more stable and complete [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:18:56 [INFO] [stdout] | [INFO] [stdout] 18 | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:18:42 [INFO] [stdout] | [INFO] [stdout] 18 | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 19 | | Expression::Identifier("b") [INFO] [stdout] 20 | | ]}}) [INFO] [stdout] | |__________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | / assert_eq!( [INFO] [stdout] 17 | | LambdaParser::parse_lambda("a -> b"), [INFO] [stdout] 18 | | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 19 | | Expression::Identifier("b") [INFO] [stdout] 20 | | ]}}) [INFO] [stdout] 21 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:24:56 [INFO] [stdout] | [INFO] [stdout] 24 | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:25:76 [INFO] [stdout] | [INFO] [stdout] 25 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:25:62 [INFO] [stdout] | [INFO] [stdout] 25 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________^ [INFO] [stdout] 26 | | Expression::Identifier("c") [INFO] [stdout] 27 | | ]}}) [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:25:32 [INFO] [stdout] | [INFO] [stdout] 25 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:25:32 [INFO] [stdout] | [INFO] [stdout] 25 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________^ [INFO] [stdout] 26 | | Expression::Identifier("c") [INFO] [stdout] 27 | | ]}}) [INFO] [stdout] | |_______________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:24:42 [INFO] [stdout] | [INFO] [stdout] 24 | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 25 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 26 | | Expression::Identifier("c") [INFO] [stdout] 27 | | ]}}) [INFO] [stdout] 28 | | ]}}) [INFO] [stdout] | |__________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | / assert_eq!( [INFO] [stdout] 23 | | LambdaParser::parse_lambda("a -> b -> c"), [INFO] [stdout] 24 | | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 25 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] ... | [INFO] [stdout] 28 | | ]}}) [INFO] [stdout] 29 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:32:56 [INFO] [stdout] | [INFO] [stdout] 32 | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:32:42 [INFO] [stdout] | [INFO] [stdout] 32 | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 33 | | Expression::Identifier("b"), [INFO] [stdout] 34 | | Expression::Identifier("c") [INFO] [stdout] 35 | | ]}}) [INFO] [stdout] | |__________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | / assert_eq!( [INFO] [stdout] 31 | | LambdaParser::parse_lambda("a -> b c"), [INFO] [stdout] 32 | | Ok(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 33 | | Expression::Identifier("b"), [INFO] [stdout] 34 | | Expression::Identifier("c") [INFO] [stdout] 35 | | ]}}) [INFO] [stdout] 36 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | Ok(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:46:51 [INFO] [stdout] | [INFO] [stdout] 46 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:46:37 [INFO] [stdout] | [INFO] [stdout] 46 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 47 | | Expression::Identifier("a") [INFO] [stdout] 48 | | ]}) [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | / assert_eq!( [INFO] [stdout] 44 | | LambdaParser::parse_parenthesis("((a))"), [INFO] [stdout] 45 | | Ok(Application { expressions: vec![ [INFO] [stdout] 46 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] ... | [INFO] [stdout] 49 | | ]}) [INFO] [stdout] 50 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:53:26 [INFO] [stdout] | [INFO] [stdout] 53 | Ok(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:55:51 [INFO] [stdout] | [INFO] [stdout] 55 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:55:37 [INFO] [stdout] | [INFO] [stdout] 55 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 56 | | Expression::Identifier("b"), [INFO] [stdout] 57 | | Expression::Identifier("c"), [INFO] [stdout] 58 | | ]}), [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:59:51 [INFO] [stdout] | [INFO] [stdout] 59 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:60:55 [INFO] [stdout] | [INFO] [stdout] 60 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:60:41 [INFO] [stdout] | [INFO] [stdout] 60 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 61 | | Expression::Identifier("d") [INFO] [stdout] 62 | | ]}), [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:59:37 [INFO] [stdout] | [INFO] [stdout] 59 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 60 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 61 | | Expression::Identifier("d") [INFO] [stdout] 62 | | ]}), [INFO] [stdout] 63 | | Expression::Identifier("e") [INFO] [stdout] 64 | | ]}) [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | / assert_eq!( [INFO] [stdout] 52 | | LambdaParser::parse_parenthesis("(a (b c) ((d) e))"), [INFO] [stdout] 53 | | Ok(Application { expressions: vec![ [INFO] [stdout] 54 | | Expression::Identifier("a"), [INFO] [stdout] ... | [INFO] [stdout] 65 | | ]}) [INFO] [stdout] 66 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:73:75 [INFO] [stdout] | [INFO] [stdout] 73 | Ok(Expression::Lambda(Lambda { argument: "e", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:74:51 [INFO] [stdout] | [INFO] [stdout] 74 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:75:80 [INFO] [stdout] | [INFO] [stdout] 75 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:75:66 [INFO] [stdout] | [INFO] [stdout] 75 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 76 | | Expression::Identifier("a") [INFO] [stdout] 77 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:75:36 [INFO] [stdout] | [INFO] [stdout] 75 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:75:36 [INFO] [stdout] | [INFO] [stdout] 75 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 76 | | Expression::Identifier("a") [INFO] [stdout] 77 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:74:37 [INFO] [stdout] | [INFO] [stdout] 74 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 75 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 76 | | Expression::Identifier("a") [INFO] [stdout] 77 | | ]}}) [INFO] [stdout] 78 | | ]}), [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:79:51 [INFO] [stdout] | [INFO] [stdout] 79 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:80:80 [INFO] [stdout] | [INFO] [stdout] 80 | Expression::Lambda(Lambda { argument: "c", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:80:66 [INFO] [stdout] | [INFO] [stdout] 80 | Expression::Lambda(Lambda { argument: "c", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 81 | | Expression::Identifier("c") [INFO] [stdout] 82 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:80:36 [INFO] [stdout] | [INFO] [stdout] 80 | Expression::Lambda(Lambda { argument: "c", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:80:36 [INFO] [stdout] | [INFO] [stdout] 80 | Expression::Lambda(Lambda { argument: "c", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 81 | | Expression::Identifier("c") [INFO] [stdout] 82 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:79:37 [INFO] [stdout] | [INFO] [stdout] 79 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 80 | | Expression::Lambda(Lambda { argument: "c", body: Application { expressions: vec![ [INFO] [stdout] 81 | | Expression::Identifier("c") [INFO] [stdout] 82 | | ]}}) [INFO] [stdout] 83 | | ]}), [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:73:61 [INFO] [stdout] | [INFO] [stdout] 73 | Ok(Expression::Lambda(Lambda { argument: "e", body: Application { expressions: vec![ [INFO] [stdout] | _____________________________________________________________^ [INFO] [stdout] 74 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 75 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 76 | | Expression::Identifier("a") [INFO] [stdout] ... | [INFO] [stdout] 84 | | Expression::Identifier("e") [INFO] [stdout] 85 | | ]}})) [INFO] [stdout] | |__________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:73:31 [INFO] [stdout] | [INFO] [stdout] 73 | Ok(Expression::Lambda(Lambda { argument: "e", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:73:31 [INFO] [stdout] | [INFO] [stdout] 73 | Ok(Expression::Lambda(Lambda { argument: "e", body: Application { expressions: vec![ [INFO] [stdout] | _______________________________^ [INFO] [stdout] 74 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 75 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 76 | | Expression::Identifier("a") [INFO] [stdout] ... | [INFO] [stdout] 84 | | Expression::Identifier("e") [INFO] [stdout] 85 | | ]}})) [INFO] [stdout] | |___________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | / assert_eq!( [INFO] [stdout] 72 | | LambdaParser::parse_expression("e -> (a -> a) (c -> c) e"), [INFO] [stdout] 73 | | Ok(Expression::Lambda(Lambda { argument: "e", body: Application { expressions: vec![ [INFO] [stdout] 74 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] ... | [INFO] [stdout] 85 | | ]}})) [INFO] [stdout] 86 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:93:26 [INFO] [stdout] | [INFO] [stdout] 93 | Ok(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 91 | / assert_eq!( [INFO] [stdout] 92 | | LambdaParser::parse_application("a b"), [INFO] [stdout] 93 | | Ok(Application { expressions: vec![ [INFO] [stdout] 94 | | Expression::Identifier("a"), [INFO] [stdout] 95 | | Expression::Identifier("b") [INFO] [stdout] 96 | | ]}) [INFO] [stdout] 97 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:100:26 [INFO] [stdout] | [INFO] [stdout] 100 | Ok(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | / assert_eq!( [INFO] [stdout] 99 | | LambdaParser::parse_application("a b c"), [INFO] [stdout] 100 | | Ok(Application { expressions: vec![ [INFO] [stdout] 101 | | Expression::Identifier("a"), [INFO] [stdout] ... | [INFO] [stdout] 104 | | ]}) [INFO] [stdout] 105 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:108:26 [INFO] [stdout] | [INFO] [stdout] 108 | Ok(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:109:51 [INFO] [stdout] | [INFO] [stdout] 109 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:109:37 [INFO] [stdout] | [INFO] [stdout] 109 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 110 | | Expression::Identifier("a"), [INFO] [stdout] 111 | | Expression::Identifier("b"), [INFO] [stdout] 112 | | ]}), [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | / assert_eq!( [INFO] [stdout] 107 | | LambdaParser::parse_application("(a b) c"), [INFO] [stdout] 108 | | Ok(Application { expressions: vec![ [INFO] [stdout] 109 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] ... | [INFO] [stdout] 114 | | ]}) [INFO] [stdout] 115 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:118:26 [INFO] [stdout] | [INFO] [stdout] 118 | Ok(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:120:51 [INFO] [stdout] | [INFO] [stdout] 120 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:120:37 [INFO] [stdout] | [INFO] [stdout] 120 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 121 | | Expression::Identifier("b"), [INFO] [stdout] 122 | | Expression::Identifier("c"), [INFO] [stdout] 123 | | ]}) [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | / assert_eq!( [INFO] [stdout] 117 | | LambdaParser::parse_application("a (b c)"), [INFO] [stdout] 118 | | Ok(Application { expressions: vec![ [INFO] [stdout] 119 | | Expression::Identifier("a"), [INFO] [stdout] ... | [INFO] [stdout] 124 | | ]}) [INFO] [stdout] 125 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:128:26 [INFO] [stdout] | [INFO] [stdout] 128 | Ok(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:130:76 [INFO] [stdout] | [INFO] [stdout] 130 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:130:62 [INFO] [stdout] | [INFO] [stdout] 130 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________^ [INFO] [stdout] 131 | | Expression::Identifier("c") [INFO] [stdout] 132 | | ]}}) [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:130:32 [INFO] [stdout] | [INFO] [stdout] 130 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:130:32 [INFO] [stdout] | [INFO] [stdout] 130 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________^ [INFO] [stdout] 131 | | Expression::Identifier("c") [INFO] [stdout] 132 | | ]}}) [INFO] [stdout] | |_______________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 126 | / assert_eq!( [INFO] [stdout] 127 | | LambdaParser::parse_application("a b -> c"), [INFO] [stdout] 128 | | Ok(Application { expressions: vec![ [INFO] [stdout] 129 | | Expression::Identifier("a"), [INFO] [stdout] ... | [INFO] [stdout] 133 | | ]}) [INFO] [stdout] 134 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:141:63 [INFO] [stdout] | [INFO] [stdout] 141 | Ok(Assignment { target: "ident", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:142:76 [INFO] [stdout] | [INFO] [stdout] 142 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:142:62 [INFO] [stdout] | [INFO] [stdout] 142 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________^ [INFO] [stdout] 143 | | Expression::Identifier("a") [INFO] [stdout] 144 | | ]}}) [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:142:32 [INFO] [stdout] | [INFO] [stdout] 142 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:142:32 [INFO] [stdout] | [INFO] [stdout] 142 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________^ [INFO] [stdout] 143 | | Expression::Identifier("a") [INFO] [stdout] 144 | | ]}}) [INFO] [stdout] | |_______________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:141:49 [INFO] [stdout] | [INFO] [stdout] 141 | Ok(Assignment { target: "ident", value: Application { expressions: vec![ [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 142 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 143 | | Expression::Identifier("a") [INFO] [stdout] 144 | | ]}}) [INFO] [stdout] 145 | | ]}}) [INFO] [stdout] | |__________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:141:12 [INFO] [stdout] | [INFO] [stdout] 141 | Ok(Assignment { target: "ident", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | / assert_eq!( [INFO] [stdout] 140 | | LambdaParser::parse_assignment("ident = a -> a"), [INFO] [stdout] 141 | | Ok(Assignment { target: "ident", value: Application { expressions: vec![ [INFO] [stdout] 142 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] ... | [INFO] [stdout] 145 | | ]}}) [INFO] [stdout] 146 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:149:61 [INFO] [stdout] | [INFO] [stdout] 149 | Ok(Assignment { target: "and", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:150:76 [INFO] [stdout] | [INFO] [stdout] 150 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:151:80 [INFO] [stdout] | [INFO] [stdout] 151 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:151:66 [INFO] [stdout] | [INFO] [stdout] 151 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 152 | | Expression::Identifier("a"), [INFO] [stdout] 153 | | Expression::Identifier("b"), [INFO] [stdout] 154 | | Expression::Identifier("false") [INFO] [stdout] 155 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:151:36 [INFO] [stdout] | [INFO] [stdout] 151 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:151:36 [INFO] [stdout] | [INFO] [stdout] 151 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 152 | | Expression::Identifier("a"), [INFO] [stdout] 153 | | Expression::Identifier("b"), [INFO] [stdout] 154 | | Expression::Identifier("false") [INFO] [stdout] 155 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:150:62 [INFO] [stdout] | [INFO] [stdout] 150 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________^ [INFO] [stdout] 151 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 152 | | Expression::Identifier("a"), [INFO] [stdout] 153 | | Expression::Identifier("b"), [INFO] [stdout] 154 | | Expression::Identifier("false") [INFO] [stdout] 155 | | ]}}) [INFO] [stdout] 156 | | ]}}) [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:150:32 [INFO] [stdout] | [INFO] [stdout] 150 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:150:32 [INFO] [stdout] | [INFO] [stdout] 150 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________^ [INFO] [stdout] 151 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 152 | | Expression::Identifier("a"), [INFO] [stdout] 153 | | Expression::Identifier("b"), [INFO] [stdout] 154 | | Expression::Identifier("false") [INFO] [stdout] 155 | | ]}}) [INFO] [stdout] 156 | | ]}}) [INFO] [stdout] | |_______________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:149:47 [INFO] [stdout] | [INFO] [stdout] 149 | Ok(Assignment { target: "and", value: Application { expressions: vec![ [INFO] [stdout] | _______________________________________________^ [INFO] [stdout] 150 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 151 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 152 | | Expression::Identifier("a"), [INFO] [stdout] ... | [INFO] [stdout] 156 | | ]}}) [INFO] [stdout] 157 | | ]}}) [INFO] [stdout] | |__________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 149 | Ok(Assignment { target: "and", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:147:5 [INFO] [stdout] | [INFO] [stdout] 147 | / assert_eq!( [INFO] [stdout] 148 | | LambdaParser::parse_assignment("and = a -> b -> a b false"), [INFO] [stdout] 149 | | Ok(Assignment { target: "and", value: Application { expressions: vec![ [INFO] [stdout] 150 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] ... | [INFO] [stdout] 157 | | ]}}) [INFO] [stdout] 158 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:166:63 [INFO] [stdout] | [INFO] [stdout] 166 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:167:80 [INFO] [stdout] | [INFO] [stdout] 167 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:168:84 [INFO] [stdout] | [INFO] [stdout] 168 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:168:70 [INFO] [stdout] | [INFO] [stdout] 168 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 169 | | Expression::Identifier("a") [INFO] [stdout] 170 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:168:40 [INFO] [stdout] | [INFO] [stdout] 168 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:168:40 [INFO] [stdout] | [INFO] [stdout] 168 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 169 | | Expression::Identifier("a") [INFO] [stdout] 170 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:167:66 [INFO] [stdout] | [INFO] [stdout] 167 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 168 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 169 | | Expression::Identifier("a") [INFO] [stdout] 170 | | ]}}) [INFO] [stdout] 171 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:167:36 [INFO] [stdout] | [INFO] [stdout] 167 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:167:36 [INFO] [stdout] | [INFO] [stdout] 167 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 168 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 169 | | Expression::Identifier("a") [INFO] [stdout] 170 | | ]}}) [INFO] [stdout] 171 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:166:49 [INFO] [stdout] | [INFO] [stdout] 166 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 167 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 168 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 169 | | Expression::Identifier("a") [INFO] [stdout] 170 | | ]}}) [INFO] [stdout] 171 | | ]}}) [INFO] [stdout] 172 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:166:13 [INFO] [stdout] | [INFO] [stdout] 166 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:165:12 [INFO] [stdout] | [INFO] [stdout] 165 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:163:5 [INFO] [stdout] | [INFO] [stdout] 163 | / assert_eq!( [INFO] [stdout] 164 | | LambdaParser::parse_program("true = a -> b -> a"), [INFO] [stdout] 165 | | Ok(Program { assignments: vec![ [INFO] [stdout] 166 | | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] ... | [INFO] [stdout] 173 | | ]}) [INFO] [stdout] 174 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:180:63 [INFO] [stdout] | [INFO] [stdout] 180 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:181:80 [INFO] [stdout] | [INFO] [stdout] 181 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:182:84 [INFO] [stdout] | [INFO] [stdout] 182 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:182:70 [INFO] [stdout] | [INFO] [stdout] 182 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 183 | | Expression::Identifier("a") [INFO] [stdout] 184 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:182:40 [INFO] [stdout] | [INFO] [stdout] 182 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:182:40 [INFO] [stdout] | [INFO] [stdout] 182 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 183 | | Expression::Identifier("a") [INFO] [stdout] 184 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:181:66 [INFO] [stdout] | [INFO] [stdout] 181 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 182 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 183 | | Expression::Identifier("a") [INFO] [stdout] 184 | | ]}}) [INFO] [stdout] 185 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:181:36 [INFO] [stdout] | [INFO] [stdout] 181 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:181:36 [INFO] [stdout] | [INFO] [stdout] 181 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 182 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 183 | | Expression::Identifier("a") [INFO] [stdout] 184 | | ]}}) [INFO] [stdout] 185 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:180:49 [INFO] [stdout] | [INFO] [stdout] 180 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 181 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 182 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 183 | | Expression::Identifier("a") [INFO] [stdout] 184 | | ]}}) [INFO] [stdout] 185 | | ]}}) [INFO] [stdout] 186 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:180:13 [INFO] [stdout] | [INFO] [stdout] 180 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 179 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:175:5 [INFO] [stdout] | [INFO] [stdout] 175 | / assert_eq!( [INFO] [stdout] 176 | | LambdaParser::parse_program(r" [INFO] [stdout] 177 | | true = a -> b -> a [INFO] [stdout] 178 | | "), [INFO] [stdout] ... | [INFO] [stdout] 187 | | ]}) [INFO] [stdout] 188 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:192:63 [INFO] [stdout] | [INFO] [stdout] 192 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:193:80 [INFO] [stdout] | [INFO] [stdout] 193 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:194:84 [INFO] [stdout] | [INFO] [stdout] 194 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:194:70 [INFO] [stdout] | [INFO] [stdout] 194 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 195 | | Expression::Identifier("a") [INFO] [stdout] 196 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:194:40 [INFO] [stdout] | [INFO] [stdout] 194 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:194:40 [INFO] [stdout] | [INFO] [stdout] 194 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 195 | | Expression::Identifier("a") [INFO] [stdout] 196 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:193:66 [INFO] [stdout] | [INFO] [stdout] 193 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 194 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 195 | | Expression::Identifier("a") [INFO] [stdout] 196 | | ]}}) [INFO] [stdout] 197 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:193:36 [INFO] [stdout] | [INFO] [stdout] 193 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:193:36 [INFO] [stdout] | [INFO] [stdout] 193 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 194 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 195 | | Expression::Identifier("a") [INFO] [stdout] 196 | | ]}}) [INFO] [stdout] 197 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:192:49 [INFO] [stdout] | [INFO] [stdout] 192 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 193 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 194 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 195 | | Expression::Identifier("a") [INFO] [stdout] 196 | | ]}}) [INFO] [stdout] 197 | | ]}}) [INFO] [stdout] 198 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:192:13 [INFO] [stdout] | [INFO] [stdout] 192 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:199:64 [INFO] [stdout] | [INFO] [stdout] 199 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:200:80 [INFO] [stdout] | [INFO] [stdout] 200 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:201:84 [INFO] [stdout] | [INFO] [stdout] 201 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:201:70 [INFO] [stdout] | [INFO] [stdout] 201 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 202 | | Expression::Identifier("b") [INFO] [stdout] 203 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:201:40 [INFO] [stdout] | [INFO] [stdout] 201 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:201:40 [INFO] [stdout] | [INFO] [stdout] 201 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 202 | | Expression::Identifier("b") [INFO] [stdout] 203 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:200:66 [INFO] [stdout] | [INFO] [stdout] 200 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 201 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 202 | | Expression::Identifier("b") [INFO] [stdout] 203 | | ]}}) [INFO] [stdout] 204 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:200:36 [INFO] [stdout] | [INFO] [stdout] 200 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:200:36 [INFO] [stdout] | [INFO] [stdout] 200 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 201 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 202 | | Expression::Identifier("b") [INFO] [stdout] 203 | | ]}}) [INFO] [stdout] 204 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:199:50 [INFO] [stdout] | [INFO] [stdout] 199 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________^ [INFO] [stdout] 200 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 201 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 202 | | Expression::Identifier("b") [INFO] [stdout] 203 | | ]}}) [INFO] [stdout] 204 | | ]}}) [INFO] [stdout] 205 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:199:13 [INFO] [stdout] | [INFO] [stdout] 199 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 189 | / assert_eq!( [INFO] [stdout] 190 | | LambdaParser::parse_program("true = a -> b -> a\nfalse = a -> b -> b"), [INFO] [stdout] 191 | | Ok(Program { assignments: vec![ [INFO] [stdout] 192 | | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] ... | [INFO] [stdout] 206 | | ]}) [INFO] [stdout] 207 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:215:63 [INFO] [stdout] | [INFO] [stdout] 215 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:216:80 [INFO] [stdout] | [INFO] [stdout] 216 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:217:84 [INFO] [stdout] | [INFO] [stdout] 217 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:217:70 [INFO] [stdout] | [INFO] [stdout] 217 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 218 | | Expression::Identifier("a") [INFO] [stdout] 219 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:217:40 [INFO] [stdout] | [INFO] [stdout] 217 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:217:40 [INFO] [stdout] | [INFO] [stdout] 217 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 218 | | Expression::Identifier("a") [INFO] [stdout] 219 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:216:66 [INFO] [stdout] | [INFO] [stdout] 216 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 217 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 218 | | Expression::Identifier("a") [INFO] [stdout] 219 | | ]}}) [INFO] [stdout] 220 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:216:36 [INFO] [stdout] | [INFO] [stdout] 216 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:216:36 [INFO] [stdout] | [INFO] [stdout] 216 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 217 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 218 | | Expression::Identifier("a") [INFO] [stdout] 219 | | ]}}) [INFO] [stdout] 220 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:215:49 [INFO] [stdout] | [INFO] [stdout] 215 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 216 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 217 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 218 | | Expression::Identifier("a") [INFO] [stdout] 219 | | ]}}) [INFO] [stdout] 220 | | ]}}) [INFO] [stdout] 221 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:215:13 [INFO] [stdout] | [INFO] [stdout] 215 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:222:64 [INFO] [stdout] | [INFO] [stdout] 222 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:223:80 [INFO] [stdout] | [INFO] [stdout] 223 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:224:84 [INFO] [stdout] | [INFO] [stdout] 224 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:224:70 [INFO] [stdout] | [INFO] [stdout] 224 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 225 | | Expression::Identifier("b") [INFO] [stdout] 226 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:224:40 [INFO] [stdout] | [INFO] [stdout] 224 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:224:40 [INFO] [stdout] | [INFO] [stdout] 224 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 225 | | Expression::Identifier("b") [INFO] [stdout] 226 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:223:66 [INFO] [stdout] | [INFO] [stdout] 223 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 224 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 225 | | Expression::Identifier("b") [INFO] [stdout] 226 | | ]}}) [INFO] [stdout] 227 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:223:36 [INFO] [stdout] | [INFO] [stdout] 223 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:223:36 [INFO] [stdout] | [INFO] [stdout] 223 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 224 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 225 | | Expression::Identifier("b") [INFO] [stdout] 226 | | ]}}) [INFO] [stdout] 227 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:222:50 [INFO] [stdout] | [INFO] [stdout] 222 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________^ [INFO] [stdout] 223 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 224 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 225 | | Expression::Identifier("b") [INFO] [stdout] 226 | | ]}}) [INFO] [stdout] 227 | | ]}}) [INFO] [stdout] 228 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:222:13 [INFO] [stdout] | [INFO] [stdout] 222 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:229:62 [INFO] [stdout] | [INFO] [stdout] 229 | Assignment { target: "not", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:230:80 [INFO] [stdout] | [INFO] [stdout] 230 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:230:66 [INFO] [stdout] | [INFO] [stdout] 230 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 231 | | Expression::Identifier("a"), [INFO] [stdout] 232 | | Expression::Identifier("false"), [INFO] [stdout] 233 | | Expression::Identifier("true") [INFO] [stdout] 234 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:230:36 [INFO] [stdout] | [INFO] [stdout] 230 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:230:36 [INFO] [stdout] | [INFO] [stdout] 230 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 231 | | Expression::Identifier("a"), [INFO] [stdout] 232 | | Expression::Identifier("false"), [INFO] [stdout] 233 | | Expression::Identifier("true") [INFO] [stdout] 234 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:229:48 [INFO] [stdout] | [INFO] [stdout] 229 | Assignment { target: "not", value: Application { expressions: vec![ [INFO] [stdout] | ________________________________________________^ [INFO] [stdout] 230 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 231 | | Expression::Identifier("a"), [INFO] [stdout] 232 | | Expression::Identifier("false"), [INFO] [stdout] 233 | | Expression::Identifier("true") [INFO] [stdout] 234 | | ]}}) [INFO] [stdout] 235 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:229:13 [INFO] [stdout] | [INFO] [stdout] 229 | Assignment { target: "not", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:214:12 [INFO] [stdout] | [INFO] [stdout] 214 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:208:5 [INFO] [stdout] | [INFO] [stdout] 208 | / assert_eq!( [INFO] [stdout] 209 | | LambdaParser::parse_program(r" [INFO] [stdout] 210 | | true = a -> b -> a [INFO] [stdout] 211 | | false = a -> b -> b [INFO] [stdout] ... | [INFO] [stdout] 236 | | ]}) [INFO] [stdout] 237 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:255:63 [INFO] [stdout] | [INFO] [stdout] 255 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:256:80 [INFO] [stdout] | [INFO] [stdout] 256 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:257:84 [INFO] [stdout] | [INFO] [stdout] 257 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:257:70 [INFO] [stdout] | [INFO] [stdout] 257 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 258 | | Expression::Identifier("a") [INFO] [stdout] 259 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:257:40 [INFO] [stdout] | [INFO] [stdout] 257 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:257:40 [INFO] [stdout] | [INFO] [stdout] 257 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 258 | | Expression::Identifier("a") [INFO] [stdout] 259 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:256:66 [INFO] [stdout] | [INFO] [stdout] 256 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 257 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 258 | | Expression::Identifier("a") [INFO] [stdout] 259 | | ]}}) [INFO] [stdout] 260 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:256:36 [INFO] [stdout] | [INFO] [stdout] 256 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:256:36 [INFO] [stdout] | [INFO] [stdout] 256 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 257 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 258 | | Expression::Identifier("a") [INFO] [stdout] 259 | | ]}}) [INFO] [stdout] 260 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:255:49 [INFO] [stdout] | [INFO] [stdout] 255 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 256 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 257 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 258 | | Expression::Identifier("a") [INFO] [stdout] 259 | | ]}}) [INFO] [stdout] 260 | | ]}}) [INFO] [stdout] 261 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:255:13 [INFO] [stdout] | [INFO] [stdout] 255 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:262:64 [INFO] [stdout] | [INFO] [stdout] 262 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:263:80 [INFO] [stdout] | [INFO] [stdout] 263 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:264:84 [INFO] [stdout] | [INFO] [stdout] 264 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:264:70 [INFO] [stdout] | [INFO] [stdout] 264 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 265 | | Expression::Identifier("b") [INFO] [stdout] 266 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:264:40 [INFO] [stdout] | [INFO] [stdout] 264 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:264:40 [INFO] [stdout] | [INFO] [stdout] 264 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 265 | | Expression::Identifier("b") [INFO] [stdout] 266 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:263:66 [INFO] [stdout] | [INFO] [stdout] 263 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 264 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 265 | | Expression::Identifier("b") [INFO] [stdout] 266 | | ]}}) [INFO] [stdout] 267 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:263:36 [INFO] [stdout] | [INFO] [stdout] 263 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:263:36 [INFO] [stdout] | [INFO] [stdout] 263 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 264 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 265 | | Expression::Identifier("b") [INFO] [stdout] 266 | | ]}}) [INFO] [stdout] 267 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:262:50 [INFO] [stdout] | [INFO] [stdout] 262 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________^ [INFO] [stdout] 263 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 264 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 265 | | Expression::Identifier("b") [INFO] [stdout] 266 | | ]}}) [INFO] [stdout] 267 | | ]}}) [INFO] [stdout] 268 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:262:13 [INFO] [stdout] | [INFO] [stdout] 262 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:269:62 [INFO] [stdout] | [INFO] [stdout] 269 | Assignment { target: "not", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:270:80 [INFO] [stdout] | [INFO] [stdout] 270 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:270:66 [INFO] [stdout] | [INFO] [stdout] 270 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 271 | | Expression::Identifier("a"), [INFO] [stdout] 272 | | Expression::Identifier("false"), [INFO] [stdout] 273 | | Expression::Identifier("true") [INFO] [stdout] 274 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:270:36 [INFO] [stdout] | [INFO] [stdout] 270 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:270:36 [INFO] [stdout] | [INFO] [stdout] 270 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 271 | | Expression::Identifier("a"), [INFO] [stdout] 272 | | Expression::Identifier("false"), [INFO] [stdout] 273 | | Expression::Identifier("true") [INFO] [stdout] 274 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:269:48 [INFO] [stdout] | [INFO] [stdout] 269 | Assignment { target: "not", value: Application { expressions: vec![ [INFO] [stdout] | ________________________________________________^ [INFO] [stdout] 270 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 271 | | Expression::Identifier("a"), [INFO] [stdout] 272 | | Expression::Identifier("false"), [INFO] [stdout] 273 | | Expression::Identifier("true") [INFO] [stdout] 274 | | ]}}) [INFO] [stdout] 275 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:269:13 [INFO] [stdout] | [INFO] [stdout] 269 | Assignment { target: "not", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:254:12 [INFO] [stdout] | [INFO] [stdout] 254 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | / assert_eq!( [INFO] [stdout] 243 | | LambdaParser::parse_program(r" [INFO] [stdout] 244 | | true = [INFO] [stdout] 245 | | a -> [INFO] [stdout] ... | [INFO] [stdout] 276 | | ]}) [INFO] [stdout] 277 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:288:60 [INFO] [stdout] | [INFO] [stdout] 288 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:289:55 [INFO] [stdout] | [INFO] [stdout] 289 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:289:41 [INFO] [stdout] | [INFO] [stdout] 289 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 290 | | Expression::Identifier("a"), [INFO] [stdout] 291 | | Expression::Identifier("b") [INFO] [stdout] 292 | | ]}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:288:46 [INFO] [stdout] | [INFO] [stdout] 288 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 289 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 290 | | Expression::Identifier("a"), [INFO] [stdout] 291 | | Expression::Identifier("b") [INFO] [stdout] 292 | | ]}) [INFO] [stdout] 293 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:288:13 [INFO] [stdout] | [INFO] [stdout] 288 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:294:60 [INFO] [stdout] | [INFO] [stdout] 294 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:295:55 [INFO] [stdout] | [INFO] [stdout] 295 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:295:41 [INFO] [stdout] | [INFO] [stdout] 295 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 296 | | Expression::Identifier("a"), [INFO] [stdout] 297 | | Expression::Identifier("b") [INFO] [stdout] 298 | | ]}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:294:46 [INFO] [stdout] | [INFO] [stdout] 294 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 295 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 296 | | Expression::Identifier("a"), [INFO] [stdout] 297 | | Expression::Identifier("b") [INFO] [stdout] 298 | | ]}) [INFO] [stdout] 299 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:294:13 [INFO] [stdout] | [INFO] [stdout] 294 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:300:60 [INFO] [stdout] | [INFO] [stdout] 300 | Assignment { target: "z", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:301:55 [INFO] [stdout] | [INFO] [stdout] 301 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:301:41 [INFO] [stdout] | [INFO] [stdout] 301 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 302 | | Expression::Identifier("a"), [INFO] [stdout] 303 | | Expression::Identifier("b") [INFO] [stdout] 304 | | ]}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:300:46 [INFO] [stdout] | [INFO] [stdout] 300 | Assignment { target: "z", value: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 301 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 302 | | Expression::Identifier("a"), [INFO] [stdout] 303 | | Expression::Identifier("b") [INFO] [stdout] 304 | | ]}) [INFO] [stdout] 305 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:300:13 [INFO] [stdout] | [INFO] [stdout] 300 | Assignment { target: "z", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:287:12 [INFO] [stdout] | [INFO] [stdout] 287 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:278:5 [INFO] [stdout] | [INFO] [stdout] 278 | / assert_eq!( [INFO] [stdout] 279 | | LambdaParser::parse_program(r" [INFO] [stdout] 280 | | x = [INFO] [stdout] 281 | | (a b) [INFO] [stdout] ... | [INFO] [stdout] 306 | | ]}) [INFO] [stdout] 307 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:321:60 [INFO] [stdout] | [INFO] [stdout] 321 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:322:55 [INFO] [stdout] | [INFO] [stdout] 322 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:322:41 [INFO] [stdout] | [INFO] [stdout] 322 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 323 | | Expression::Identifier("a"), [INFO] [stdout] 324 | | Expression::Identifier("b") [INFO] [stdout] 325 | | ]}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:321:46 [INFO] [stdout] | [INFO] [stdout] 321 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 322 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 323 | | Expression::Identifier("a"), [INFO] [stdout] 324 | | Expression::Identifier("b") [INFO] [stdout] 325 | | ]}) [INFO] [stdout] 326 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:321:13 [INFO] [stdout] | [INFO] [stdout] 321 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:327:60 [INFO] [stdout] | [INFO] [stdout] 327 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:327:46 [INFO] [stdout] | [INFO] [stdout] 327 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 328 | | Expression::Identifier("a"), [INFO] [stdout] 329 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:327:13 [INFO] [stdout] | [INFO] [stdout] 327 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:320:12 [INFO] [stdout] | [INFO] [stdout] 320 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:312:5 [INFO] [stdout] | [INFO] [stdout] 312 | / assert_eq!( [INFO] [stdout] 313 | | LambdaParser::parse_program(r" [INFO] [stdout] 314 | | x = ( [INFO] [stdout] 315 | | a [INFO] [stdout] ... | [INFO] [stdout] 330 | | ]}) [INFO] [stdout] 331 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:340:60 [INFO] [stdout] | [INFO] [stdout] 340 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:341:55 [INFO] [stdout] | [INFO] [stdout] 341 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:342:84 [INFO] [stdout] | [INFO] [stdout] 342 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:342:70 [INFO] [stdout] | [INFO] [stdout] 342 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 343 | | Expression::Identifier("b"), [INFO] [stdout] 344 | | Expression::Identifier("c") [INFO] [stdout] 345 | | ]}}), [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:342:40 [INFO] [stdout] | [INFO] [stdout] 342 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:342:40 [INFO] [stdout] | [INFO] [stdout] 342 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 343 | | Expression::Identifier("b"), [INFO] [stdout] 344 | | Expression::Identifier("c") [INFO] [stdout] 345 | | ]}}), [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:341:41 [INFO] [stdout] | [INFO] [stdout] 341 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 342 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 343 | | Expression::Identifier("b"), [INFO] [stdout] 344 | | Expression::Identifier("c") [INFO] [stdout] 345 | | ]}}), [INFO] [stdout] 346 | | ]}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:340:46 [INFO] [stdout] | [INFO] [stdout] 340 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 341 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 342 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 343 | | Expression::Identifier("b"), [INFO] [stdout] ... | [INFO] [stdout] 346 | | ]}) [INFO] [stdout] 347 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:340:13 [INFO] [stdout] | [INFO] [stdout] 340 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:348:60 [INFO] [stdout] | [INFO] [stdout] 348 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:348:46 [INFO] [stdout] | [INFO] [stdout] 348 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 349 | | Expression::Identifier("a"), [INFO] [stdout] 350 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:348:13 [INFO] [stdout] | [INFO] [stdout] 348 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:339:12 [INFO] [stdout] | [INFO] [stdout] 339 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:332:5 [INFO] [stdout] | [INFO] [stdout] 332 | / assert_eq!( [INFO] [stdout] 333 | | LambdaParser::parse_program(r" [INFO] [stdout] 334 | | x = (a -> b [INFO] [stdout] 335 | | c [INFO] [stdout] ... | [INFO] [stdout] 351 | | ]}) [INFO] [stdout] 352 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:361:60 [INFO] [stdout] | [INFO] [stdout] 361 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:362:55 [INFO] [stdout] | [INFO] [stdout] 362 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:363:59 [INFO] [stdout] | [INFO] [stdout] 363 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:364:88 [INFO] [stdout] | [INFO] [stdout] 364 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:364:74 [INFO] [stdout] | [INFO] [stdout] 364 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________________^ [INFO] [stdout] 365 | | Expression::Identifier("b"), [INFO] [stdout] 366 | | ]}}), [INFO] [stdout] | |__________________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:364:44 [INFO] [stdout] | [INFO] [stdout] 364 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:364:44 [INFO] [stdout] | [INFO] [stdout] 364 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________________^ [INFO] [stdout] 365 | | Expression::Identifier("b"), [INFO] [stdout] 366 | | ]}}), [INFO] [stdout] | |___________________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:363:45 [INFO] [stdout] | [INFO] [stdout] 363 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 364 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 365 | | Expression::Identifier("b"), [INFO] [stdout] 366 | | ]}}), [INFO] [stdout] 367 | | ]}), [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:362:41 [INFO] [stdout] | [INFO] [stdout] 362 | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 363 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 364 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 365 | | Expression::Identifier("b"), [INFO] [stdout] ... | [INFO] [stdout] 368 | | Expression::Identifier("c") [INFO] [stdout] 369 | | ]}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:361:46 [INFO] [stdout] | [INFO] [stdout] 361 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 362 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 363 | | Expression::Parenthesis(Application { expressions: vec![ [INFO] [stdout] 364 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] ... | [INFO] [stdout] 369 | | ]}) [INFO] [stdout] 370 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:361:13 [INFO] [stdout] | [INFO] [stdout] 361 | Assignment { target: "x", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:371:60 [INFO] [stdout] | [INFO] [stdout] 371 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:371:46 [INFO] [stdout] | [INFO] [stdout] 371 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 372 | | Expression::Identifier("a"), [INFO] [stdout] 373 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:371:13 [INFO] [stdout] | [INFO] [stdout] 371 | Assignment { target: "y", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 360 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:353:5 [INFO] [stdout] | [INFO] [stdout] 353 | / assert_eq!( [INFO] [stdout] 354 | | LambdaParser::parse_program(r" [INFO] [stdout] 355 | | x = ((a -> b) [INFO] [stdout] 356 | | c [INFO] [stdout] ... | [INFO] [stdout] 374 | | ]}) [INFO] [stdout] 375 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:413:63 [INFO] [stdout] | [INFO] [stdout] 413 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:414:80 [INFO] [stdout] | [INFO] [stdout] 414 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:415:84 [INFO] [stdout] | [INFO] [stdout] 415 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:415:70 [INFO] [stdout] | [INFO] [stdout] 415 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 416 | | Expression::Identifier("a") [INFO] [stdout] 417 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:415:40 [INFO] [stdout] | [INFO] [stdout] 415 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:415:40 [INFO] [stdout] | [INFO] [stdout] 415 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 416 | | Expression::Identifier("a") [INFO] [stdout] 417 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:414:66 [INFO] [stdout] | [INFO] [stdout] 414 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 415 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 416 | | Expression::Identifier("a") [INFO] [stdout] 417 | | ]}}) [INFO] [stdout] 418 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:414:36 [INFO] [stdout] | [INFO] [stdout] 414 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:414:36 [INFO] [stdout] | [INFO] [stdout] 414 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 415 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 416 | | Expression::Identifier("a") [INFO] [stdout] 417 | | ]}}) [INFO] [stdout] 418 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:413:49 [INFO] [stdout] | [INFO] [stdout] 413 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 414 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 415 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 416 | | Expression::Identifier("a") [INFO] [stdout] 417 | | ]}}) [INFO] [stdout] 418 | | ]}}) [INFO] [stdout] 419 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:413:13 [INFO] [stdout] | [INFO] [stdout] 413 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:420:64 [INFO] [stdout] | [INFO] [stdout] 420 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:421:80 [INFO] [stdout] | [INFO] [stdout] 421 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:422:84 [INFO] [stdout] | [INFO] [stdout] 422 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:422:70 [INFO] [stdout] | [INFO] [stdout] 422 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 423 | | Expression::Identifier("b") [INFO] [stdout] 424 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:422:40 [INFO] [stdout] | [INFO] [stdout] 422 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:422:40 [INFO] [stdout] | [INFO] [stdout] 422 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 423 | | Expression::Identifier("b") [INFO] [stdout] 424 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:421:66 [INFO] [stdout] | [INFO] [stdout] 421 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 422 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 423 | | Expression::Identifier("b") [INFO] [stdout] 424 | | ]}}) [INFO] [stdout] 425 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:421:36 [INFO] [stdout] | [INFO] [stdout] 421 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:421:36 [INFO] [stdout] | [INFO] [stdout] 421 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 422 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 423 | | Expression::Identifier("b") [INFO] [stdout] 424 | | ]}}) [INFO] [stdout] 425 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:420:50 [INFO] [stdout] | [INFO] [stdout] 420 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________^ [INFO] [stdout] 421 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 422 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 423 | | Expression::Identifier("b") [INFO] [stdout] 424 | | ]}}) [INFO] [stdout] 425 | | ]}}) [INFO] [stdout] 426 | | ]}}, [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 420 | Assignment { target: "false", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:427:62 [INFO] [stdout] | [INFO] [stdout] 427 | Assignment { target: "not", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:428:80 [INFO] [stdout] | [INFO] [stdout] 428 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:428:66 [INFO] [stdout] | [INFO] [stdout] 428 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 429 | | Expression::Identifier("a"), [INFO] [stdout] 430 | | Expression::Identifier("false"), [INFO] [stdout] 431 | | Expression::Identifier("true") [INFO] [stdout] 432 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:428:36 [INFO] [stdout] | [INFO] [stdout] 428 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:428:36 [INFO] [stdout] | [INFO] [stdout] 428 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 429 | | Expression::Identifier("a"), [INFO] [stdout] 430 | | Expression::Identifier("false"), [INFO] [stdout] 431 | | Expression::Identifier("true") [INFO] [stdout] 432 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:427:48 [INFO] [stdout] | [INFO] [stdout] 427 | Assignment { target: "not", value: Application { expressions: vec![ [INFO] [stdout] | ________________________________________________^ [INFO] [stdout] 428 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 429 | | Expression::Identifier("a"), [INFO] [stdout] 430 | | Expression::Identifier("false"), [INFO] [stdout] 431 | | Expression::Identifier("true") [INFO] [stdout] 432 | | ]}}) [INFO] [stdout] 433 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | Assignment { target: "not", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:412:12 [INFO] [stdout] | [INFO] [stdout] 412 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:403:5 [INFO] [stdout] | [INFO] [stdout] 403 | / assert_eq!( [INFO] [stdout] 404 | | LambdaParser::parse_program(r" [INFO] [stdout] 405 | | # the two possible bools [INFO] [stdout] 406 | | true = a -> b -> a [INFO] [stdout] ... | [INFO] [stdout] 434 | | ]}) [INFO] [stdout] 435 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:444:63 [INFO] [stdout] | [INFO] [stdout] 444 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:445:80 [INFO] [stdout] | [INFO] [stdout] 445 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `generic::Application<'_, NoData>` has no field named `expressions` [INFO] [stdout] --> src/parser/test.rs:446:84 [INFO] [stdout] | [INFO] [stdout] 446 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^^ `generic::Application<'_, NoData>` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `head`, `tail`, `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:446:70 [INFO] [stdout] | [INFO] [stdout] 446 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ______________________________________________________________________^ [INFO] [stdout] 447 | | Expression::Identifier("a") [INFO] [stdout] 448 | | ]}}) [INFO] [stdout] | |______________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:446:40 [INFO] [stdout] | [INFO] [stdout] 446 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:446:40 [INFO] [stdout] | [INFO] [stdout] 446 | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 447 | | Expression::Identifier("a") [INFO] [stdout] 448 | | ]}}) [INFO] [stdout] | |_______________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:445:66 [INFO] [stdout] | [INFO] [stdout] 445 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | __________________________________________________________________^ [INFO] [stdout] 446 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 447 | | Expression::Identifier("a") [INFO] [stdout] 448 | | ]}}) [INFO] [stdout] 449 | | ]}}) [INFO] [stdout] | |__________________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Lambda<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:445:36 [INFO] [stdout] | [INFO] [stdout] 445 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:445:36 [INFO] [stdout] | [INFO] [stdout] 445 | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 446 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 447 | | Expression::Identifier("a") [INFO] [stdout] 448 | | ]}}) [INFO] [stdout] 449 | | ]}}) [INFO] [stdout] | |___________________^ expected struct `Rc`, found struct `generic::Lambda` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Lambda<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/test.rs:444:49 [INFO] [stdout] | [INFO] [stdout] 444 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 445 | | Expression::Lambda(Lambda { argument: "a", body: Application { expressions: vec![ [INFO] [stdout] 446 | | Expression::Lambda(Lambda { argument: "b", body: Application { expressions: vec![ [INFO] [stdout] 447 | | Expression::Identifier("a") [INFO] [stdout] 448 | | ]}}) [INFO] [stdout] 449 | | ]}}) [INFO] [stdout] 450 | | ]}} [INFO] [stdout] | |______________^ expected struct `Rc`, found struct `generic::Application` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `generic::Application<'_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Assignment<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:444:13 [INFO] [stdout] | [INFO] [stdout] 444 | Assignment { target: "true", value: Application { expressions: vec![ [INFO] [stdout] | ^^^^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0063]: missing field `data` in initializer of `generic::Program<'_, NoData>` [INFO] [stdout] --> src/parser/test.rs:443:12 [INFO] [stdout] | [INFO] [stdout] 443 | Ok(Program { assignments: vec![ [INFO] [stdout] | ^^^^^^^ missing `data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Result, error::Error>` [INFO] [stdout] --> src/parser/test.rs:436:5 [INFO] [stdout] | [INFO] [stdout] 436 | / assert_eq!( [INFO] [stdout] 437 | | LambdaParser::parse_program(r"# foo [INFO] [stdout] 438 | | # bar [INFO] [stdout] 439 | | [INFO] [stdout] ... | [INFO] [stdout] 451 | | ]}) [INFO] [stdout] 452 | | ); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______Result, error::Error> [INFO] [stdout] | Result, _> [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 296 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0063, E0308, E0369, E0560. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0063`. [INFO] [stdout] [INFO] [stderr] error: could not compile `lambda` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `Command { std: "docker" "inspect" "9439be71e7c00555a39a3f396aa01a6eb1fe8e1482d7711901d5622b26b83f2b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9439be71e7c00555a39a3f396aa01a6eb1fe8e1482d7711901d5622b26b83f2b", kill_on_drop: false }` [INFO] [stdout] 9439be71e7c00555a39a3f396aa01a6eb1fe8e1482d7711901d5622b26b83f2b