[INFO] fetching crate dora-parser 0.0.2... [INFO] linting dora-parser-0.0.2 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate dora-parser 0.0.2 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate dora-parser 0.0.2 [INFO] finished tweaking crates.io crate dora-parser 0.0.2 [INFO] tweaked toml for crates.io crate dora-parser 0.0.2 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate dora-parser 0.0.2 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 21 packages to latest compatible versions [INFO] [stderr] Adding parking_lot v0.6.4 (available: v0.12.5) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded lock_api v0.1.5 [INFO] [stderr] Downloaded parking_lot v0.6.4 [INFO] [stderr] Downloaded parking_lot_core v0.3.1 [INFO] [stderr] Downloaded scopeguard v0.3.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 16d706691408f279392953e70b3a8fb1754a0c98a04135c50bcc0c96db4ee545 [INFO] running `Command { std: "docker" "start" "-a" "16d706691408f279392953e70b3a8fb1754a0c98a04135c50bcc0c96db4ee545", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "16d706691408f279392953e70b3a8fb1754a0c98a04135c50bcc0c96db4ee545", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "16d706691408f279392953e70b3a8fb1754a0c98a04135c50bcc0c96db4ee545", kill_on_drop: false }` [INFO] [stdout] 16d706691408f279392953e70b3a8fb1754a0c98a04135c50bcc0c96db4ee545 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 32ede05e69fb9ca9295bea9ef88bdd3f2ee89fefebf3e19262482e10eea0c8a4 [INFO] running `Command { std: "docker" "start" "-a" "32ede05e69fb9ca9295bea9ef88bdd3f2ee89fefebf3e19262482e10eea0c8a4", kill_on_drop: false }` [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Checking rand_core v0.4.2 [INFO] [stderr] Checking stable_deref_trait v1.2.1 [INFO] [stderr] Checking scopeguard v0.3.3 [INFO] [stderr] Checking smallvec v0.6.14 [INFO] [stderr] Checking owning_ref v0.4.1 [INFO] [stderr] Checking lock_api v0.1.5 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking rand v0.5.6 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling parking_lot_core v0.3.1 [INFO] [stderr] Checking parking_lot v0.6.4 [INFO] [stderr] Checking dora-parser v0.0.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/parser.rs:440:13 [INFO] [stdout] | [INFO] [stdout] 440 | pos: pos, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `pos` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/parser.rs:442:13 [INFO] [stdout] | [INFO] [stdout] 442 | internal: internal, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `internal` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/parser.rs:440:13 [INFO] [stdout] | [INFO] [stdout] 440 | pos: pos, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `pos` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/parser.rs:442:13 [INFO] [stdout] | [INFO] [stdout] 442 | internal: internal, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `internal` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Delegation` is never constructed [INFO] [stdout] --> src/parser.rs:2081:8 [INFO] [stdout] | [INFO] [stdout] 2081 | struct Delegation { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> src/ast/dump.rs:700:30 [INFO] [stdout] | [INFO] [stdout] 700 | F: Fn(&mut AstDumper) -> (), [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Ast` [INFO] [stdout] --> src/ast.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | / pub fn new() -> Ast { [INFO] [stdout] 19 | | Ast { files: Vec::new() } [INFO] [stdout] 20 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 17 + impl Default for Ast { [INFO] [stdout] 18 + fn default() -> Self { [INFO] [stdout] 19 + Self::new() [INFO] [stdout] 20 + } [INFO] [stdout] 21 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you don't need to add `&` to all patterns [INFO] [stdout] --> src/ast.rs:123:9 [INFO] [stdout] | [INFO] [stdout] 123 | / match self { [INFO] [stdout] 124 | | &ElemFunction(ref fct) => fct.id, [INFO] [stdout] 125 | | &ElemClass(ref class) => class.id, [INFO] [stdout] 126 | | &ElemStruct(ref s) => s.id, [INFO] [stdout] ... | [INFO] [stdout] 132 | | &ElemEnum(ref e) => e.id, [INFO] [stdout] 133 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stdout] = note: `#[warn(clippy::match_ref_pats)]` on by default [INFO] [stdout] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stdout] | [INFO] [stdout] 123 ~ match *self { [INFO] [stdout] 124 ~ ElemFunction(ref fct) => fct.id, [INFO] [stdout] 125 ~ ElemClass(ref class) => class.id, [INFO] [stdout] 126 ~ ElemStruct(ref s) => s.id, [INFO] [stdout] 127 ~ ElemTrait(ref t) => t.id, [INFO] [stdout] 128 ~ ElemImpl(ref i) => i.id, [INFO] [stdout] 129 ~ ElemModule(ref m) => m.id, [INFO] [stdout] 130 ~ ElemGlobal(ref g) => g.id, [INFO] [stdout] 131 ~ ElemConst(ref c) => c.id, [INFO] [stdout] 132 ~ ElemEnum(ref e) => e.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:124:13 [INFO] [stdout] | [INFO] [stdout] 124 | &ElemFunction(ref fct) => fct.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] = note: `#[warn(clippy::needless_borrowed_reference)]` on by default [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 124 - &ElemFunction(ref fct) => fct.id, [INFO] [stdout] 124 + ElemFunction(fct) => fct.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:125:13 [INFO] [stdout] | [INFO] [stdout] 125 | &ElemClass(ref class) => class.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 125 - &ElemClass(ref class) => class.id, [INFO] [stdout] 125 + ElemClass(class) => class.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | &ElemStruct(ref s) => s.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 126 - &ElemStruct(ref s) => s.id, [INFO] [stdout] 126 + ElemStruct(s) => s.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | &ElemTrait(ref t) => t.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 127 - &ElemTrait(ref t) => t.id, [INFO] [stdout] 127 + ElemTrait(t) => t.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | &ElemImpl(ref i) => i.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 128 - &ElemImpl(ref i) => i.id, [INFO] [stdout] 128 + ElemImpl(i) => i.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | &ElemModule(ref m) => m.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 129 - &ElemModule(ref m) => m.id, [INFO] [stdout] 129 + ElemModule(m) => m.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:130:13 [INFO] [stdout] | [INFO] [stdout] 130 | &ElemGlobal(ref g) => g.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 130 - &ElemGlobal(ref g) => g.id, [INFO] [stdout] 130 + ElemGlobal(g) => g.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | &ElemConst(ref c) => c.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 131 - &ElemConst(ref c) => c.id, [INFO] [stdout] 131 + ElemConst(c) => c.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | &ElemEnum(ref e) => e.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 132 - &ElemEnum(ref e) => e.id, [INFO] [stdout] 132 + ElemEnum(e) => e.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | &ElemFunction(ref fct) => Some(fct), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 138 - &ElemFunction(ref fct) => Some(fct), [INFO] [stdout] 138 + ElemFunction(fct) => Some(fct), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:145:13 [INFO] [stdout] | [INFO] [stdout] 145 | &ElemClass(ref class) => Some(class), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 145 - &ElemClass(ref class) => Some(class), [INFO] [stdout] 145 + ElemClass(class) => Some(class), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:152:13 [INFO] [stdout] | [INFO] [stdout] 152 | &ElemStruct(ref struc) => Some(struc), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 152 - &ElemStruct(ref struc) => Some(struc), [INFO] [stdout] 152 + ElemStruct(struc) => Some(struc), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | &ElemTrait(ref trai) => Some(trai), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 159 - &ElemTrait(ref trai) => Some(trai), [INFO] [stdout] 159 + ElemTrait(trai) => Some(trai), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:166:13 [INFO] [stdout] | [INFO] [stdout] 166 | &ElemImpl(ref ximpl) => Some(ximpl), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 166 - &ElemImpl(ref ximpl) => Some(ximpl), [INFO] [stdout] 166 + ElemImpl(ximpl) => Some(ximpl), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:173:13 [INFO] [stdout] | [INFO] [stdout] 173 | &ElemModule(ref module) => Some(module), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 173 - &ElemModule(ref module) => Some(module), [INFO] [stdout] 173 + ElemModule(module) => Some(module), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:180:13 [INFO] [stdout] | [INFO] [stdout] 180 | &ElemGlobal(ref global) => Some(global), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 180 - &ElemGlobal(ref global) => Some(global), [INFO] [stdout] 180 + ElemGlobal(global) => Some(global), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | &ElemConst(ref konst) => Some(konst), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 187 - &ElemConst(ref konst) => Some(konst), [INFO] [stdout] 187 + ElemConst(konst) => Some(konst), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/ast.rs:341:20 [INFO] [stdout] | [INFO] [stdout] 341 | if basic.params.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `basic.params.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/ast.rs:377:41 [INFO] [stdout] | [INFO] [stdout] 377 | Type::TypeBasic(ref val) => format!("{}", *interner.str(val.name)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `(*interner.str(val.name)).to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Modifiers` [INFO] [stdout] --> src/ast.rs:564:5 [INFO] [stdout] | [INFO] [stdout] 564 | / pub fn new() -> Modifiers { [INFO] [stdout] 565 | | Modifiers(Vec::new()) [INFO] [stdout] 566 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 563 + impl Default for Modifiers { [INFO] [stdout] 564 + fn default() -> Self { [INFO] [stdout] 565 + Self::new() [INFO] [stdout] 566 + } [INFO] [stdout] 567 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:842:9 [INFO] [stdout] | [INFO] [stdout] 842 | / match *self { [INFO] [stdout] 843 | | Stmt::StmtThrow(_) => true, [INFO] [stdout] 844 | | _ => false, [INFO] [stdout] 845 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] = note: `#[warn(clippy::match_like_matches_macro)]` on by default [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 842 - match *self { [INFO] [stdout] 843 - Stmt::StmtThrow(_) => true, [INFO] [stdout] 844 - _ => false, [INFO] [stdout] 845 - } [INFO] [stdout] 842 + matches!(*self, Stmt::StmtThrow(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:856:9 [INFO] [stdout] | [INFO] [stdout] 856 | / match *self { [INFO] [stdout] 857 | | Stmt::StmtDefer(_) => true, [INFO] [stdout] 858 | | _ => false, [INFO] [stdout] 859 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 856 - match *self { [INFO] [stdout] 857 - Stmt::StmtDefer(_) => true, [INFO] [stdout] 858 - _ => false, [INFO] [stdout] 859 - } [INFO] [stdout] 856 + matches!(*self, Stmt::StmtDefer(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:870:9 [INFO] [stdout] | [INFO] [stdout] 870 | / match *self { [INFO] [stdout] 871 | | Stmt::StmtDo(_) => true, [INFO] [stdout] 872 | | _ => false, [INFO] [stdout] 873 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 870 - match *self { [INFO] [stdout] 871 - Stmt::StmtDo(_) => true, [INFO] [stdout] 872 - _ => false, [INFO] [stdout] 873 - } [INFO] [stdout] 870 + matches!(*self, Stmt::StmtDo(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:884:9 [INFO] [stdout] | [INFO] [stdout] 884 | / match *self { [INFO] [stdout] 885 | | Stmt::StmtVar(_) => true, [INFO] [stdout] 886 | | _ => false, [INFO] [stdout] 887 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 884 - match *self { [INFO] [stdout] 885 - Stmt::StmtVar(_) => true, [INFO] [stdout] 886 - _ => false, [INFO] [stdout] 887 - } [INFO] [stdout] 884 + matches!(*self, Stmt::StmtVar(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:898:9 [INFO] [stdout] | [INFO] [stdout] 898 | / match *self { [INFO] [stdout] 899 | | Stmt::StmtWhile(_) => true, [INFO] [stdout] 900 | | _ => false, [INFO] [stdout] 901 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 898 - match *self { [INFO] [stdout] 899 - Stmt::StmtWhile(_) => true, [INFO] [stdout] 900 - _ => false, [INFO] [stdout] 901 - } [INFO] [stdout] 898 + matches!(*self, Stmt::StmtWhile(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:912:9 [INFO] [stdout] | [INFO] [stdout] 912 | / match *self { [INFO] [stdout] 913 | | Stmt::StmtFor(_) => true, [INFO] [stdout] 914 | | _ => false, [INFO] [stdout] 915 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 912 - match *self { [INFO] [stdout] 913 - Stmt::StmtFor(_) => true, [INFO] [stdout] 914 - _ => false, [INFO] [stdout] 915 - } [INFO] [stdout] 912 + matches!(*self, Stmt::StmtFor(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:926:9 [INFO] [stdout] | [INFO] [stdout] 926 | / match *self { [INFO] [stdout] 927 | | Stmt::StmtLoop(_) => true, [INFO] [stdout] 928 | | _ => false, [INFO] [stdout] 929 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 926 - match *self { [INFO] [stdout] 927 - Stmt::StmtLoop(_) => true, [INFO] [stdout] 928 - _ => false, [INFO] [stdout] 929 - } [INFO] [stdout] 926 + matches!(*self, Stmt::StmtLoop(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:940:9 [INFO] [stdout] | [INFO] [stdout] 940 | / match *self { [INFO] [stdout] 941 | | Stmt::StmtExpr(_) => true, [INFO] [stdout] 942 | | _ => false, [INFO] [stdout] 943 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 940 - match *self { [INFO] [stdout] 941 - Stmt::StmtExpr(_) => true, [INFO] [stdout] 942 - _ => false, [INFO] [stdout] 943 - } [INFO] [stdout] 940 + matches!(*self, Stmt::StmtExpr(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:954:9 [INFO] [stdout] | [INFO] [stdout] 954 | / match *self { [INFO] [stdout] 955 | | Stmt::StmtReturn(_) => true, [INFO] [stdout] 956 | | _ => false, [INFO] [stdout] 957 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 954 - match *self { [INFO] [stdout] 955 - Stmt::StmtReturn(_) => true, [INFO] [stdout] 956 - _ => false, [INFO] [stdout] 957 - } [INFO] [stdout] 954 + matches!(*self, Stmt::StmtReturn(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:968:9 [INFO] [stdout] | [INFO] [stdout] 968 | / match *self { [INFO] [stdout] 969 | | Stmt::StmtBreak(_) => true, [INFO] [stdout] 970 | | _ => false, [INFO] [stdout] 971 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 968 - match *self { [INFO] [stdout] 969 - Stmt::StmtBreak(_) => true, [INFO] [stdout] 970 - _ => false, [INFO] [stdout] 971 - } [INFO] [stdout] 968 + matches!(*self, Stmt::StmtBreak(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:982:9 [INFO] [stdout] | [INFO] [stdout] 982 | / match *self { [INFO] [stdout] 983 | | Stmt::StmtContinue(_) => true, [INFO] [stdout] 984 | | _ => false, [INFO] [stdout] 985 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 982 - match *self { [INFO] [stdout] 983 - Stmt::StmtContinue(_) => true, [INFO] [stdout] 984 - _ => false, [INFO] [stdout] 985 - } [INFO] [stdout] 982 + matches!(*self, Stmt::StmtContinue(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1221:9 [INFO] [stdout] | [INFO] [stdout] 1221 | / match *self { [INFO] [stdout] 1222 | | BinOp::Assign => true, [INFO] [stdout] 1223 | | _ => false, [INFO] [stdout] 1224 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1221 - match *self { [INFO] [stdout] 1222 - BinOp::Assign => true, [INFO] [stdout] 1223 - _ => false, [INFO] [stdout] 1224 - } [INFO] [stdout] 1221 + matches!(*self, BinOp::Assign) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1228:9 [INFO] [stdout] | [INFO] [stdout] 1228 | / match *self { [INFO] [stdout] 1229 | | BinOp::Cmp(cmp) if cmp != CmpOp::Is && cmp != CmpOp::IsNot => true, [INFO] [stdout] 1230 | | _ => false, [INFO] [stdout] 1231 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1228 - match *self { [INFO] [stdout] 1229 - BinOp::Cmp(cmp) if cmp != CmpOp::Is && cmp != CmpOp::IsNot => true, [INFO] [stdout] 1230 - _ => false, [INFO] [stdout] 1231 - } [INFO] [stdout] 1228 + matches!(*self, BinOp::Cmp(cmp) if cmp != CmpOp::Is && cmp != CmpOp::IsNot) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1583:9 [INFO] [stdout] | [INFO] [stdout] 1583 | / match *self { [INFO] [stdout] 1584 | | Expr::ExprUn(_) => true, [INFO] [stdout] 1585 | | _ => false, [INFO] [stdout] 1586 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1583 - match *self { [INFO] [stdout] 1584 - Expr::ExprUn(_) => true, [INFO] [stdout] 1585 - _ => false, [INFO] [stdout] 1586 - } [INFO] [stdout] 1583 + matches!(*self, Expr::ExprUn(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1597:9 [INFO] [stdout] | [INFO] [stdout] 1597 | / match *self { [INFO] [stdout] 1598 | | Expr::ExprBin(_) => true, [INFO] [stdout] 1599 | | _ => false, [INFO] [stdout] 1600 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1597 - match *self { [INFO] [stdout] 1598 - Expr::ExprBin(_) => true, [INFO] [stdout] 1599 - _ => false, [INFO] [stdout] 1600 - } [INFO] [stdout] 1597 + matches!(*self, Expr::ExprBin(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1611:9 [INFO] [stdout] | [INFO] [stdout] 1611 | / match *self { [INFO] [stdout] 1612 | | Expr::ExprIdent(_) => true, [INFO] [stdout] 1613 | | _ => false, [INFO] [stdout] 1614 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1611 - match *self { [INFO] [stdout] 1612 - Expr::ExprIdent(_) => true, [INFO] [stdout] 1613 - _ => false, [INFO] [stdout] 1614 - } [INFO] [stdout] 1611 + matches!(*self, Expr::ExprIdent(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1625:9 [INFO] [stdout] | [INFO] [stdout] 1625 | / match *self { [INFO] [stdout] 1626 | | Expr::ExprCall(_) => true, [INFO] [stdout] 1627 | | _ => false, [INFO] [stdout] 1628 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1625 - match *self { [INFO] [stdout] 1626 - Expr::ExprCall(_) => true, [INFO] [stdout] 1627 - _ => false, [INFO] [stdout] 1628 - } [INFO] [stdout] 1625 + matches!(*self, Expr::ExprCall(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1639:9 [INFO] [stdout] | [INFO] [stdout] 1639 | / match *self { [INFO] [stdout] 1640 | | Expr::ExprPath(_) => true, [INFO] [stdout] 1641 | | _ => false, [INFO] [stdout] 1642 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1639 - match *self { [INFO] [stdout] 1640 - Expr::ExprPath(_) => true, [INFO] [stdout] 1641 - _ => false, [INFO] [stdout] 1642 - } [INFO] [stdout] 1639 + matches!(*self, Expr::ExprPath(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1653:9 [INFO] [stdout] | [INFO] [stdout] 1653 | / match *self { [INFO] [stdout] 1654 | | Expr::ExprTypeParam(_) => true, [INFO] [stdout] 1655 | | _ => false, [INFO] [stdout] 1656 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1653 - match *self { [INFO] [stdout] 1654 - Expr::ExprTypeParam(_) => true, [INFO] [stdout] 1655 - _ => false, [INFO] [stdout] 1656 - } [INFO] [stdout] 1653 + matches!(*self, Expr::ExprTypeParam(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1667:9 [INFO] [stdout] | [INFO] [stdout] 1667 | / match *self { [INFO] [stdout] 1668 | | Expr::ExprLitChar(_) => true, [INFO] [stdout] 1669 | | _ => false, [INFO] [stdout] 1670 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1667 - match *self { [INFO] [stdout] 1668 - Expr::ExprLitChar(_) => true, [INFO] [stdout] 1669 - _ => false, [INFO] [stdout] 1670 - } [INFO] [stdout] 1667 + matches!(*self, Expr::ExprLitChar(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1681:9 [INFO] [stdout] | [INFO] [stdout] 1681 | / match *self { [INFO] [stdout] 1682 | | Expr::ExprLitInt(_) => true, [INFO] [stdout] 1683 | | _ => false, [INFO] [stdout] 1684 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1681 - match *self { [INFO] [stdout] 1682 - Expr::ExprLitInt(_) => true, [INFO] [stdout] 1683 - _ => false, [INFO] [stdout] 1684 - } [INFO] [stdout] 1681 + matches!(*self, Expr::ExprLitInt(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1695:9 [INFO] [stdout] | [INFO] [stdout] 1695 | / match *self { [INFO] [stdout] 1696 | | Expr::ExprTemplate(_) => true, [INFO] [stdout] 1697 | | _ => false, [INFO] [stdout] 1698 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1695 - match *self { [INFO] [stdout] 1696 - Expr::ExprTemplate(_) => true, [INFO] [stdout] 1697 - _ => false, [INFO] [stdout] 1698 - } [INFO] [stdout] 1695 + matches!(*self, Expr::ExprTemplate(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1709:9 [INFO] [stdout] | [INFO] [stdout] 1709 | / match *self { [INFO] [stdout] 1710 | | Expr::ExprLitFloat(_) => true, [INFO] [stdout] 1711 | | _ => false, [INFO] [stdout] 1712 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1709 - match *self { [INFO] [stdout] 1710 - Expr::ExprLitFloat(_) => true, [INFO] [stdout] 1711 - _ => false, [INFO] [stdout] 1712 - } [INFO] [stdout] 1709 + matches!(*self, Expr::ExprLitFloat(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1723:9 [INFO] [stdout] | [INFO] [stdout] 1723 | / match *self { [INFO] [stdout] 1724 | | Expr::ExprLitStr(_) => true, [INFO] [stdout] 1725 | | _ => false, [INFO] [stdout] 1726 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1723 - match *self { [INFO] [stdout] 1724 - Expr::ExprLitStr(_) => true, [INFO] [stdout] 1725 - _ => false, [INFO] [stdout] 1726 - } [INFO] [stdout] 1723 + matches!(*self, Expr::ExprLitStr(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1737:9 [INFO] [stdout] | [INFO] [stdout] 1737 | / match *self { [INFO] [stdout] 1738 | | Expr::ExprLitBool(_) => true, [INFO] [stdout] 1739 | | _ => false, [INFO] [stdout] 1740 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1737 - match *self { [INFO] [stdout] 1738 - Expr::ExprLitBool(_) => true, [INFO] [stdout] 1739 - _ => false, [INFO] [stdout] 1740 - } [INFO] [stdout] 1737 + matches!(*self, Expr::ExprLitBool(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1744:9 [INFO] [stdout] | [INFO] [stdout] 1744 | / match *self { [INFO] [stdout] 1745 | | Expr::ExprLitBool(ref lit) if lit.value => true, [INFO] [stdout] 1746 | | _ => false, [INFO] [stdout] 1747 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1744 - match *self { [INFO] [stdout] 1745 - Expr::ExprLitBool(ref lit) if lit.value => true, [INFO] [stdout] 1746 - _ => false, [INFO] [stdout] 1747 - } [INFO] [stdout] 1744 + matches!(*self, Expr::ExprLitBool(ref lit) if lit.value) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1758:9 [INFO] [stdout] | [INFO] [stdout] 1758 | / match *self { [INFO] [stdout] 1759 | | Expr::ExprDot(_) => true, [INFO] [stdout] 1760 | | _ => false, [INFO] [stdout] 1761 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1758 - match *self { [INFO] [stdout] 1759 - Expr::ExprDot(_) => true, [INFO] [stdout] 1760 - _ => false, [INFO] [stdout] 1761 - } [INFO] [stdout] 1758 + matches!(*self, Expr::ExprDot(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1772:9 [INFO] [stdout] | [INFO] [stdout] 1772 | / match *self { [INFO] [stdout] 1773 | | Expr::ExprDelegation(_) => true, [INFO] [stdout] 1774 | | _ => false, [INFO] [stdout] 1775 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1772 - match *self { [INFO] [stdout] 1773 - Expr::ExprDelegation(_) => true, [INFO] [stdout] 1774 - _ => false, [INFO] [stdout] 1775 - } [INFO] [stdout] 1772 + matches!(*self, Expr::ExprDelegation(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1779:9 [INFO] [stdout] | [INFO] [stdout] 1779 | / match *self { [INFO] [stdout] 1780 | | Expr::ExprSelf(_) => true, [INFO] [stdout] 1781 | | _ => false, [INFO] [stdout] 1782 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1779 - match *self { [INFO] [stdout] 1780 - Expr::ExprSelf(_) => true, [INFO] [stdout] 1781 - _ => false, [INFO] [stdout] 1782 - } [INFO] [stdout] 1779 + matches!(*self, Expr::ExprSelf(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1786:9 [INFO] [stdout] | [INFO] [stdout] 1786 | / match *self { [INFO] [stdout] 1787 | | Expr::ExprSuper(_) => true, [INFO] [stdout] 1788 | | _ => false, [INFO] [stdout] 1789 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1786 - match *self { [INFO] [stdout] 1787 - Expr::ExprSuper(_) => true, [INFO] [stdout] 1788 - _ => false, [INFO] [stdout] 1789 - } [INFO] [stdout] 1786 + matches!(*self, Expr::ExprSuper(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1800:9 [INFO] [stdout] | [INFO] [stdout] 1800 | / match *self { [INFO] [stdout] 1801 | | Expr::ExprNil(_) => true, [INFO] [stdout] 1802 | | _ => false, [INFO] [stdout] 1803 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1800 - match *self { [INFO] [stdout] 1801 - Expr::ExprNil(_) => true, [INFO] [stdout] 1802 - _ => false, [INFO] [stdout] 1803 - } [INFO] [stdout] 1800 + matches!(*self, Expr::ExprNil(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1814:9 [INFO] [stdout] | [INFO] [stdout] 1814 | / match *self { [INFO] [stdout] 1815 | | Expr::ExprConv(_) => true, [INFO] [stdout] 1816 | | _ => false, [INFO] [stdout] 1817 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1814 - match *self { [INFO] [stdout] 1815 - Expr::ExprConv(_) => true, [INFO] [stdout] 1816 - _ => false, [INFO] [stdout] 1817 - } [INFO] [stdout] 1814 + matches!(*self, Expr::ExprConv(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1828:9 [INFO] [stdout] | [INFO] [stdout] 1828 | / match *self { [INFO] [stdout] 1829 | | Expr::ExprTry(_) => true, [INFO] [stdout] 1830 | | _ => false, [INFO] [stdout] 1831 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1828 - match *self { [INFO] [stdout] 1829 - Expr::ExprTry(_) => true, [INFO] [stdout] 1830 - _ => false, [INFO] [stdout] 1831 - } [INFO] [stdout] 1828 + matches!(*self, Expr::ExprTry(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1842:9 [INFO] [stdout] | [INFO] [stdout] 1842 | / match self { [INFO] [stdout] 1843 | | &Expr::ExprLambda(_) => true, [INFO] [stdout] 1844 | | _ => false, [INFO] [stdout] 1845 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1842 - match self { [INFO] [stdout] 1843 - &Expr::ExprLambda(_) => true, [INFO] [stdout] 1844 - _ => false, [INFO] [stdout] 1845 - } [INFO] [stdout] 1842 + matches!(self, &Expr::ExprLambda(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1856:9 [INFO] [stdout] | [INFO] [stdout] 1856 | / match *self { [INFO] [stdout] 1857 | | Expr::ExprTuple(_) => true, [INFO] [stdout] 1858 | | _ => false, [INFO] [stdout] 1859 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1856 - match *self { [INFO] [stdout] 1857 - Expr::ExprTuple(_) => true, [INFO] [stdout] 1858 - _ => false, [INFO] [stdout] 1859 - } [INFO] [stdout] 1856 + matches!(*self, Expr::ExprTuple(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1870:9 [INFO] [stdout] | [INFO] [stdout] 1870 | / match self { [INFO] [stdout] 1871 | | &Expr::ExprBlock(_) => true, [INFO] [stdout] 1872 | | _ => false, [INFO] [stdout] 1873 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1870 - match self { [INFO] [stdout] 1871 - &Expr::ExprBlock(_) => true, [INFO] [stdout] 1872 - _ => false, [INFO] [stdout] 1873 - } [INFO] [stdout] 1870 + matches!(self, &Expr::ExprBlock(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1884:9 [INFO] [stdout] | [INFO] [stdout] 1884 | / match *self { [INFO] [stdout] 1885 | | Expr::ExprIf(_) => true, [INFO] [stdout] 1886 | | _ => false, [INFO] [stdout] 1887 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1884 - match *self { [INFO] [stdout] 1885 - Expr::ExprIf(_) => true, [INFO] [stdout] 1886 - _ => false, [INFO] [stdout] 1887 - } [INFO] [stdout] 1884 + matches!(*self, Expr::ExprIf(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1891:9 [INFO] [stdout] | [INFO] [stdout] 1891 | / match self { [INFO] [stdout] 1892 | | &Expr::ExprBlock(_) => false, [INFO] [stdout] 1893 | | &Expr::ExprIf(_) => false, [INFO] [stdout] 1894 | | _ => true, [INFO] [stdout] 1895 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1891 - match self { [INFO] [stdout] 1892 - &Expr::ExprBlock(_) => false, [INFO] [stdout] 1893 - &Expr::ExprIf(_) => false, [INFO] [stdout] 1894 - _ => true, [INFO] [stdout] 1895 - } [INFO] [stdout] 1891 + !matches!(self, &Expr::ExprBlock(_) | &Expr::ExprIf(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you don't need to add `&` to all patterns [INFO] [stdout] --> src/ast.rs:1891:9 [INFO] [stdout] | [INFO] [stdout] 1891 | / match self { [INFO] [stdout] 1892 | | &Expr::ExprBlock(_) => false, [INFO] [stdout] 1893 | | &Expr::ExprIf(_) => false, [INFO] [stdout] 1894 | | _ => true, [INFO] [stdout] 1895 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stdout] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stdout] | [INFO] [stdout] 1891 ~ match *self { [INFO] [stdout] 1892 ~ Expr::ExprBlock(_) => false, [INFO] [stdout] 1893 ~ Expr::ExprIf(_) => false, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:2034:9 [INFO] [stdout] | [INFO] [stdout] 2034 | / match self { [INFO] [stdout] 2035 | | &TryMode::Normal => true, [INFO] [stdout] 2036 | | _ => false, [INFO] [stdout] 2037 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 2034 - match self { [INFO] [stdout] 2035 - &TryMode::Normal => true, [INFO] [stdout] 2036 - _ => false, [INFO] [stdout] 2037 - } [INFO] [stdout] 2034 + matches!(self, &TryMode::Normal) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:2041:9 [INFO] [stdout] | [INFO] [stdout] 2041 | / match self { [INFO] [stdout] 2042 | | &TryMode::Else(_) => true, [INFO] [stdout] 2043 | | _ => false, [INFO] [stdout] 2044 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 2041 - match self { [INFO] [stdout] 2042 - &TryMode::Else(_) => true, [INFO] [stdout] 2043 - _ => false, [INFO] [stdout] 2044 - } [INFO] [stdout] 2041 + matches!(self, &TryMode::Else(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:2048:9 [INFO] [stdout] | [INFO] [stdout] 2048 | / match self { [INFO] [stdout] 2049 | | &TryMode::Force => true, [INFO] [stdout] 2050 | | _ => false, [INFO] [stdout] 2051 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 2048 - match self { [INFO] [stdout] 2049 - &TryMode::Force => true, [INFO] [stdout] 2050 - _ => false, [INFO] [stdout] 2051 - } [INFO] [stdout] 2048 + matches!(self, &TryMode::Force) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:2055:9 [INFO] [stdout] | [INFO] [stdout] 2055 | / match self { [INFO] [stdout] 2056 | | &TryMode::Opt => true, [INFO] [stdout] 2057 | | _ => false, [INFO] [stdout] 2058 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 2055 - match self { [INFO] [stdout] 2056 - &TryMode::Opt => true, [INFO] [stdout] 2057 - _ => false, [INFO] [stdout] 2058 - } [INFO] [stdout] 2055 + matches!(self, &TryMode::Opt) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/builder.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 175 | stmts: Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `Vec` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_box [INFO] [stdout] = note: `#[warn(clippy::vec_box)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/builder.rs:186:44 [INFO] [stdout] | [INFO] [stdout] 186 | pub fn add_stmts(&mut self, mut stmts: Vec>) -> &mut BuilderBlock<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `Vec` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/interner.rs:42:14 [INFO] [stdout] | [INFO] [stdout] 42 | fn deref<'a>(&'a self) -> &'a String { [INFO] [stdout] | ^^ ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] = note: `#[warn(clippy::needless_lifetimes)]` on by default [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 42 - fn deref<'a>(&'a self) -> &'a String { [INFO] [stdout] 42 + fn deref(&self) -> &String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Interner` [INFO] [stdout] --> src/interner.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | / pub fn new() -> Interner { [INFO] [stdout] 58 | | Interner { [INFO] [stdout] 59 | | data: Mutex::new(Internal { [INFO] [stdout] 60 | | map: HashMap::new(), [INFO] [stdout] ... | [INFO] [stdout] 64 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 56 + impl Default for Interner { [INFO] [stdout] 57 + fn default() -> Self { [INFO] [stdout] 58 + Self::new() [INFO] [stdout] 59 + } [INFO] [stdout] 60 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/lexer/position.rs:75:23 [INFO] [stdout] | [INFO] [stdout] 75 | assert!(pos < u32::max_value()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] = note: `#[warn(clippy::legacy_numeric_constants)]` on by default [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 75 - assert!(pos < u32::max_value()); [INFO] [stdout] 75 + assert!(pos < u32::MAX); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/lexer/position.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | Loc(u32::max_value()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 80 - Loc(u32::max_value()) [INFO] [stdout] 80 + Loc(u32::MAX) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/lexer/position.rs:84:19 [INFO] [stdout] | [INFO] [stdout] 84 | self.0 != u32::max_value() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 84 - self.0 != u32::max_value() [INFO] [stdout] 84 + self.0 != u32::MAX [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/lexer/reader.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 108 | / let reader = Reader { [INFO] [stdout] 109 | | name, [INFO] [stdout] 110 | | content, [INFO] [stdout] 111 | | line_ends: Vec::new(), [INFO] [stdout] ... | [INFO] [stdout] 115 | | tabwidth: 4, [INFO] [stdout] 116 | | }; [INFO] [stdout] | |______- unnecessary `let` binding [INFO] [stdout] 117 | [INFO] [stdout] 118 | reader [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 108 ~ [INFO] [stdout] 109 | [INFO] [stdout] 110 ~ Reader { [INFO] [stdout] 111 + name, [INFO] [stdout] 112 + content, [INFO] [stdout] 113 + line_ends: Vec::new(), [INFO] [stdout] 114 + [INFO] [stdout] 115 + idx: 0, [INFO] [stdout] 116 + pos: Position::new(1, 1), [INFO] [stdout] 117 + tabwidth: 4, [INFO] [stdout] 118 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> src/lexer.rs:49:20 [INFO] [stdout] | [INFO] [stdout] 49 | if let None = ch { [INFO] [stdout] | -------^^^^----- help: try: `if ch.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lexer.rs:82:15 [INFO] [stdout] | [INFO] [stdout] 82 | while !self.curr().is_none() && !is_newline(self.curr()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.curr().is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lexer.rs:95:15 [INFO] [stdout] | [INFO] [stdout] 95 | while !self.curr().is_none() && !self.is_multi_comment_end() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.curr().is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `char::is_digit` with literal radix of 10 [INFO] [stdout] --> src/lexer.rs:526:17 [INFO] [stdout] | [INFO] [stdout] 526 | ch.map(|ch| ch.is_digit(10)).unwrap_or(false) [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `ch.is_ascii_digit()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#is_digit_ascii_radix [INFO] [stdout] = note: `#[warn(clippy::is_digit_ascii_radix)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lexer.rs:557:21 [INFO] [stdout] | [INFO] [stdout] 557 | Some(ch) => (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') || ch == '_', [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `('a'..='z').contains(&ch)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lexer.rs:557:49 [INFO] [stdout] | [INFO] [stdout] 557 | Some(ch) => (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') || ch == '_', [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `('A'..='Z').contains(&ch)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/parser.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 49 | / let parser = Parser { [INFO] [stdout] 50 | | lexer, [INFO] [stdout] 51 | | token, [INFO] [stdout] 52 | | id_generator, [INFO] [stdout] ... | [INFO] [stdout] 58 | | last_end: Some(0), [INFO] [stdout] 59 | | }; [INFO] [stdout] | |__________- unnecessary `let` binding [INFO] [stdout] 60 | [INFO] [stdout] 61 | parser [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 49 ~ [INFO] [stdout] 50 | [INFO] [stdout] 51 ~ Parser { [INFO] [stdout] 52 + lexer, [INFO] [stdout] 53 + token, [INFO] [stdout] 54 + id_generator, [INFO] [stdout] 55 + interner, [INFO] [stdout] 56 + param_idx: 0, [INFO] [stdout] 57 + in_class_or_module: false, [INFO] [stdout] 58 + parse_struct_lit: true, [INFO] [stdout] 59 + ast, [INFO] [stdout] 60 + last_end: Some(0), [INFO] [stdout] 61 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/parser.rs:519:55 [INFO] [stdout] | [INFO] [stdout] 519 | fn parse_parent_class_params(&mut self) -> Result>, ParseErrorAndPos> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `Vec` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take` [INFO] [stdout] --> src/parser.rs:2062:25 [INFO] [stdout] | [INFO] [stdout] 2062 | block.add_stmts(mem::replace(&mut cls.initializers, Vec::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `std::mem::take(&mut cls.initializers)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mem_replace_with_default [INFO] [stdout] = note: `#[warn(clippy::mem_replace_with_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/parser.rs:2083:15 [INFO] [stdout] | [INFO] [stdout] 2083 | pub args: Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `Vec` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `NodeIdGenerator` [INFO] [stdout] --> src/parser.rs:2092:5 [INFO] [stdout] | [INFO] [stdout] 2092 | / pub fn new() -> NodeIdGenerator { [INFO] [stdout] 2093 | | NodeIdGenerator { [INFO] [stdout] 2094 | | value: RefCell::new(1), [INFO] [stdout] 2095 | | } [INFO] [stdout] 2096 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 2091 + impl Default for NodeIdGenerator { [INFO] [stdout] 2092 + fn default() -> Self { [INFO] [stdout] 2093 + Self::new() [INFO] [stdout] 2094 + } [INFO] [stdout] 2095 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ast.rs:580:17 [INFO] [stdout] | [INFO] [stdout] 580 | pub fn iter(&self) -> Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 580 | pub fn iter(&self) -> Iter<'_, ModifierElement> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Delegation` is never constructed [INFO] [stdout] --> src/parser.rs:2081:8 [INFO] [stdout] | [INFO] [stdout] 2081 | struct Delegation { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> src/ast/dump.rs:700:30 [INFO] [stdout] | [INFO] [stdout] 700 | F: Fn(&mut AstDumper) -> (), [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Ast` [INFO] [stdout] --> src/ast.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | / pub fn new() -> Ast { [INFO] [stdout] 19 | | Ast { files: Vec::new() } [INFO] [stdout] 20 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 17 + impl Default for Ast { [INFO] [stdout] 18 + fn default() -> Self { [INFO] [stdout] 19 + Self::new() [INFO] [stdout] 20 + } [INFO] [stdout] 21 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you don't need to add `&` to all patterns [INFO] [stdout] --> src/ast.rs:123:9 [INFO] [stdout] | [INFO] [stdout] 123 | / match self { [INFO] [stdout] 124 | | &ElemFunction(ref fct) => fct.id, [INFO] [stdout] 125 | | &ElemClass(ref class) => class.id, [INFO] [stdout] 126 | | &ElemStruct(ref s) => s.id, [INFO] [stdout] ... | [INFO] [stdout] 132 | | &ElemEnum(ref e) => e.id, [INFO] [stdout] 133 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stdout] = note: `#[warn(clippy::match_ref_pats)]` on by default [INFO] [stdout] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stdout] | [INFO] [stdout] 123 ~ match *self { [INFO] [stdout] 124 ~ ElemFunction(ref fct) => fct.id, [INFO] [stdout] 125 ~ ElemClass(ref class) => class.id, [INFO] [stdout] 126 ~ ElemStruct(ref s) => s.id, [INFO] [stdout] 127 ~ ElemTrait(ref t) => t.id, [INFO] [stdout] 128 ~ ElemImpl(ref i) => i.id, [INFO] [stdout] 129 ~ ElemModule(ref m) => m.id, [INFO] [stdout] 130 ~ ElemGlobal(ref g) => g.id, [INFO] [stdout] 131 ~ ElemConst(ref c) => c.id, [INFO] [stdout] 132 ~ ElemEnum(ref e) => e.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:124:13 [INFO] [stdout] | [INFO] [stdout] 124 | &ElemFunction(ref fct) => fct.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] = note: `#[warn(clippy::needless_borrowed_reference)]` on by default [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 124 - &ElemFunction(ref fct) => fct.id, [INFO] [stdout] 124 + ElemFunction(fct) => fct.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:125:13 [INFO] [stdout] | [INFO] [stdout] 125 | &ElemClass(ref class) => class.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 125 - &ElemClass(ref class) => class.id, [INFO] [stdout] 125 + ElemClass(class) => class.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | &ElemStruct(ref s) => s.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 126 - &ElemStruct(ref s) => s.id, [INFO] [stdout] 126 + ElemStruct(s) => s.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | &ElemTrait(ref t) => t.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 127 - &ElemTrait(ref t) => t.id, [INFO] [stdout] 127 + ElemTrait(t) => t.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | &ElemImpl(ref i) => i.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 128 - &ElemImpl(ref i) => i.id, [INFO] [stdout] 128 + ElemImpl(i) => i.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | &ElemModule(ref m) => m.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 129 - &ElemModule(ref m) => m.id, [INFO] [stdout] 129 + ElemModule(m) => m.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:130:13 [INFO] [stdout] | [INFO] [stdout] 130 | &ElemGlobal(ref g) => g.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 130 - &ElemGlobal(ref g) => g.id, [INFO] [stdout] 130 + ElemGlobal(g) => g.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | &ElemConst(ref c) => c.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 131 - &ElemConst(ref c) => c.id, [INFO] [stdout] 131 + ElemConst(c) => c.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | &ElemEnum(ref e) => e.id, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 132 - &ElemEnum(ref e) => e.id, [INFO] [stdout] 132 + ElemEnum(e) => e.id, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | &ElemFunction(ref fct) => Some(fct), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 138 - &ElemFunction(ref fct) => Some(fct), [INFO] [stdout] 138 + ElemFunction(fct) => Some(fct), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:145:13 [INFO] [stdout] | [INFO] [stdout] 145 | &ElemClass(ref class) => Some(class), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 145 - &ElemClass(ref class) => Some(class), [INFO] [stdout] 145 + ElemClass(class) => Some(class), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:152:13 [INFO] [stdout] | [INFO] [stdout] 152 | &ElemStruct(ref struc) => Some(struc), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 152 - &ElemStruct(ref struc) => Some(struc), [INFO] [stdout] 152 + ElemStruct(struc) => Some(struc), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | &ElemTrait(ref trai) => Some(trai), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 159 - &ElemTrait(ref trai) => Some(trai), [INFO] [stdout] 159 + ElemTrait(trai) => Some(trai), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:166:13 [INFO] [stdout] | [INFO] [stdout] 166 | &ElemImpl(ref ximpl) => Some(ximpl), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 166 - &ElemImpl(ref ximpl) => Some(ximpl), [INFO] [stdout] 166 + ElemImpl(ximpl) => Some(ximpl), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:173:13 [INFO] [stdout] | [INFO] [stdout] 173 | &ElemModule(ref module) => Some(module), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 173 - &ElemModule(ref module) => Some(module), [INFO] [stdout] 173 + ElemModule(module) => Some(module), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:180:13 [INFO] [stdout] | [INFO] [stdout] 180 | &ElemGlobal(ref global) => Some(global), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 180 - &ElemGlobal(ref global) => Some(global), [INFO] [stdout] 180 + ElemGlobal(global) => Some(global), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | &ElemConst(ref konst) => Some(konst), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 187 - &ElemConst(ref konst) => Some(konst), [INFO] [stdout] 187 + ElemConst(konst) => Some(konst), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/ast.rs:341:20 [INFO] [stdout] | [INFO] [stdout] 341 | if basic.params.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `basic.params.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:368:9 [INFO] [stdout] | [INFO] [stdout] 368 | / match self { [INFO] [stdout] 369 | | &Type::TypeTuple(ref val) if val.subtypes.len() == 0 => true, [INFO] [stdout] 370 | | _ => false, [INFO] [stdout] 371 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] = note: `#[warn(clippy::match_like_matches_macro)]` on by default [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 368 - match self { [INFO] [stdout] 369 - &Type::TypeTuple(ref val) if val.subtypes.len() == 0 => true, [INFO] [stdout] 370 - _ => false, [INFO] [stdout] 371 - } [INFO] [stdout] 368 + matches!(self, &Type::TypeTuple(ref val) if val.subtypes.len() == 0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a tuple pattern where every element takes a reference [INFO] [stdout] --> src/ast.rs:369:13 [INFO] [stdout] | [INFO] [stdout] 369 | &Type::TypeTuple(ref val) if val.subtypes.len() == 0 => true, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference [INFO] [stdout] help: try removing the `&` and `ref` parts [INFO] [stdout] | [INFO] [stdout] 369 - &Type::TypeTuple(ref val) if val.subtypes.len() == 0 => true, [INFO] [stdout] 369 + Type::TypeTuple(val) if val.subtypes.len() == 0 => true, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/ast.rs:369:42 [INFO] [stdout] | [INFO] [stdout] 369 | &Type::TypeTuple(ref val) if val.subtypes.len() == 0 => true, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `val.subtypes.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/ast.rs:377:41 [INFO] [stdout] | [INFO] [stdout] 377 | Type::TypeBasic(ref val) => format!("{}", *interner.str(val.name)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `(*interner.str(val.name)).to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Modifiers` [INFO] [stdout] --> src/ast.rs:564:5 [INFO] [stdout] | [INFO] [stdout] 564 | / pub fn new() -> Modifiers { [INFO] [stdout] 565 | | Modifiers(Vec::new()) [INFO] [stdout] 566 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 563 + impl Default for Modifiers { [INFO] [stdout] 564 + fn default() -> Self { [INFO] [stdout] 565 + Self::new() [INFO] [stdout] 566 + } [INFO] [stdout] 567 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:842:9 [INFO] [stdout] | [INFO] [stdout] 842 | / match *self { [INFO] [stdout] 843 | | Stmt::StmtThrow(_) => true, [INFO] [stdout] 844 | | _ => false, [INFO] [stdout] 845 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 842 - match *self { [INFO] [stdout] 843 - Stmt::StmtThrow(_) => true, [INFO] [stdout] 844 - _ => false, [INFO] [stdout] 845 - } [INFO] [stdout] 842 + matches!(*self, Stmt::StmtThrow(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:856:9 [INFO] [stdout] | [INFO] [stdout] 856 | / match *self { [INFO] [stdout] 857 | | Stmt::StmtDefer(_) => true, [INFO] [stdout] 858 | | _ => false, [INFO] [stdout] 859 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 856 - match *self { [INFO] [stdout] 857 - Stmt::StmtDefer(_) => true, [INFO] [stdout] 858 - _ => false, [INFO] [stdout] 859 - } [INFO] [stdout] 856 + matches!(*self, Stmt::StmtDefer(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:870:9 [INFO] [stdout] | [INFO] [stdout] 870 | / match *self { [INFO] [stdout] 871 | | Stmt::StmtDo(_) => true, [INFO] [stdout] 872 | | _ => false, [INFO] [stdout] 873 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 870 - match *self { [INFO] [stdout] 871 - Stmt::StmtDo(_) => true, [INFO] [stdout] 872 - _ => false, [INFO] [stdout] 873 - } [INFO] [stdout] 870 + matches!(*self, Stmt::StmtDo(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:884:9 [INFO] [stdout] | [INFO] [stdout] 884 | / match *self { [INFO] [stdout] 885 | | Stmt::StmtVar(_) => true, [INFO] [stdout] 886 | | _ => false, [INFO] [stdout] 887 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 884 - match *self { [INFO] [stdout] 885 - Stmt::StmtVar(_) => true, [INFO] [stdout] 886 - _ => false, [INFO] [stdout] 887 - } [INFO] [stdout] 884 + matches!(*self, Stmt::StmtVar(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:898:9 [INFO] [stdout] | [INFO] [stdout] 898 | / match *self { [INFO] [stdout] 899 | | Stmt::StmtWhile(_) => true, [INFO] [stdout] 900 | | _ => false, [INFO] [stdout] 901 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 898 - match *self { [INFO] [stdout] 899 - Stmt::StmtWhile(_) => true, [INFO] [stdout] 900 - _ => false, [INFO] [stdout] 901 - } [INFO] [stdout] 898 + matches!(*self, Stmt::StmtWhile(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:912:9 [INFO] [stdout] | [INFO] [stdout] 912 | / match *self { [INFO] [stdout] 913 | | Stmt::StmtFor(_) => true, [INFO] [stdout] 914 | | _ => false, [INFO] [stdout] 915 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 912 - match *self { [INFO] [stdout] 913 - Stmt::StmtFor(_) => true, [INFO] [stdout] 914 - _ => false, [INFO] [stdout] 915 - } [INFO] [stdout] 912 + matches!(*self, Stmt::StmtFor(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:926:9 [INFO] [stdout] | [INFO] [stdout] 926 | / match *self { [INFO] [stdout] 927 | | Stmt::StmtLoop(_) => true, [INFO] [stdout] 928 | | _ => false, [INFO] [stdout] 929 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 926 - match *self { [INFO] [stdout] 927 - Stmt::StmtLoop(_) => true, [INFO] [stdout] 928 - _ => false, [INFO] [stdout] 929 - } [INFO] [stdout] 926 + matches!(*self, Stmt::StmtLoop(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:940:9 [INFO] [stdout] | [INFO] [stdout] 940 | / match *self { [INFO] [stdout] 941 | | Stmt::StmtExpr(_) => true, [INFO] [stdout] 942 | | _ => false, [INFO] [stdout] 943 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 940 - match *self { [INFO] [stdout] 941 - Stmt::StmtExpr(_) => true, [INFO] [stdout] 942 - _ => false, [INFO] [stdout] 943 - } [INFO] [stdout] 940 + matches!(*self, Stmt::StmtExpr(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:954:9 [INFO] [stdout] | [INFO] [stdout] 954 | / match *self { [INFO] [stdout] 955 | | Stmt::StmtReturn(_) => true, [INFO] [stdout] 956 | | _ => false, [INFO] [stdout] 957 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 954 - match *self { [INFO] [stdout] 955 - Stmt::StmtReturn(_) => true, [INFO] [stdout] 956 - _ => false, [INFO] [stdout] 957 - } [INFO] [stdout] 954 + matches!(*self, Stmt::StmtReturn(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:968:9 [INFO] [stdout] | [INFO] [stdout] 968 | / match *self { [INFO] [stdout] 969 | | Stmt::StmtBreak(_) => true, [INFO] [stdout] 970 | | _ => false, [INFO] [stdout] 971 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 968 - match *self { [INFO] [stdout] 969 - Stmt::StmtBreak(_) => true, [INFO] [stdout] 970 - _ => false, [INFO] [stdout] 971 - } [INFO] [stdout] 968 + matches!(*self, Stmt::StmtBreak(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:982:9 [INFO] [stdout] | [INFO] [stdout] 982 | / match *self { [INFO] [stdout] 983 | | Stmt::StmtContinue(_) => true, [INFO] [stdout] 984 | | _ => false, [INFO] [stdout] 985 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 982 - match *self { [INFO] [stdout] 983 - Stmt::StmtContinue(_) => true, [INFO] [stdout] 984 - _ => false, [INFO] [stdout] 985 - } [INFO] [stdout] 982 + matches!(*self, Stmt::StmtContinue(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1221:9 [INFO] [stdout] | [INFO] [stdout] 1221 | / match *self { [INFO] [stdout] 1222 | | BinOp::Assign => true, [INFO] [stdout] 1223 | | _ => false, [INFO] [stdout] 1224 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1221 - match *self { [INFO] [stdout] 1222 - BinOp::Assign => true, [INFO] [stdout] 1223 - _ => false, [INFO] [stdout] 1224 - } [INFO] [stdout] 1221 + matches!(*self, BinOp::Assign) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1228:9 [INFO] [stdout] | [INFO] [stdout] 1228 | / match *self { [INFO] [stdout] 1229 | | BinOp::Cmp(cmp) if cmp != CmpOp::Is && cmp != CmpOp::IsNot => true, [INFO] [stdout] 1230 | | _ => false, [INFO] [stdout] 1231 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1228 - match *self { [INFO] [stdout] 1229 - BinOp::Cmp(cmp) if cmp != CmpOp::Is && cmp != CmpOp::IsNot => true, [INFO] [stdout] 1230 - _ => false, [INFO] [stdout] 1231 - } [INFO] [stdout] 1228 + matches!(*self, BinOp::Cmp(cmp) if cmp != CmpOp::Is && cmp != CmpOp::IsNot) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1583:9 [INFO] [stdout] | [INFO] [stdout] 1583 | / match *self { [INFO] [stdout] 1584 | | Expr::ExprUn(_) => true, [INFO] [stdout] 1585 | | _ => false, [INFO] [stdout] 1586 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1583 - match *self { [INFO] [stdout] 1584 - Expr::ExprUn(_) => true, [INFO] [stdout] 1585 - _ => false, [INFO] [stdout] 1586 - } [INFO] [stdout] 1583 + matches!(*self, Expr::ExprUn(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1597:9 [INFO] [stdout] | [INFO] [stdout] 1597 | / match *self { [INFO] [stdout] 1598 | | Expr::ExprBin(_) => true, [INFO] [stdout] 1599 | | _ => false, [INFO] [stdout] 1600 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1597 - match *self { [INFO] [stdout] 1598 - Expr::ExprBin(_) => true, [INFO] [stdout] 1599 - _ => false, [INFO] [stdout] 1600 - } [INFO] [stdout] 1597 + matches!(*self, Expr::ExprBin(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1611:9 [INFO] [stdout] | [INFO] [stdout] 1611 | / match *self { [INFO] [stdout] 1612 | | Expr::ExprIdent(_) => true, [INFO] [stdout] 1613 | | _ => false, [INFO] [stdout] 1614 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1611 - match *self { [INFO] [stdout] 1612 - Expr::ExprIdent(_) => true, [INFO] [stdout] 1613 - _ => false, [INFO] [stdout] 1614 - } [INFO] [stdout] 1611 + matches!(*self, Expr::ExprIdent(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1625:9 [INFO] [stdout] | [INFO] [stdout] 1625 | / match *self { [INFO] [stdout] 1626 | | Expr::ExprCall(_) => true, [INFO] [stdout] 1627 | | _ => false, [INFO] [stdout] 1628 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1625 - match *self { [INFO] [stdout] 1626 - Expr::ExprCall(_) => true, [INFO] [stdout] 1627 - _ => false, [INFO] [stdout] 1628 - } [INFO] [stdout] 1625 + matches!(*self, Expr::ExprCall(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1639:9 [INFO] [stdout] | [INFO] [stdout] 1639 | / match *self { [INFO] [stdout] 1640 | | Expr::ExprPath(_) => true, [INFO] [stdout] 1641 | | _ => false, [INFO] [stdout] 1642 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1639 - match *self { [INFO] [stdout] 1640 - Expr::ExprPath(_) => true, [INFO] [stdout] 1641 - _ => false, [INFO] [stdout] 1642 - } [INFO] [stdout] 1639 + matches!(*self, Expr::ExprPath(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1653:9 [INFO] [stdout] | [INFO] [stdout] 1653 | / match *self { [INFO] [stdout] 1654 | | Expr::ExprTypeParam(_) => true, [INFO] [stdout] 1655 | | _ => false, [INFO] [stdout] 1656 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1653 - match *self { [INFO] [stdout] 1654 - Expr::ExprTypeParam(_) => true, [INFO] [stdout] 1655 - _ => false, [INFO] [stdout] 1656 - } [INFO] [stdout] 1653 + matches!(*self, Expr::ExprTypeParam(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1667:9 [INFO] [stdout] | [INFO] [stdout] 1667 | / match *self { [INFO] [stdout] 1668 | | Expr::ExprLitChar(_) => true, [INFO] [stdout] 1669 | | _ => false, [INFO] [stdout] 1670 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1667 - match *self { [INFO] [stdout] 1668 - Expr::ExprLitChar(_) => true, [INFO] [stdout] 1669 - _ => false, [INFO] [stdout] 1670 - } [INFO] [stdout] 1667 + matches!(*self, Expr::ExprLitChar(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1681:9 [INFO] [stdout] | [INFO] [stdout] 1681 | / match *self { [INFO] [stdout] 1682 | | Expr::ExprLitInt(_) => true, [INFO] [stdout] 1683 | | _ => false, [INFO] [stdout] 1684 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1681 - match *self { [INFO] [stdout] 1682 - Expr::ExprLitInt(_) => true, [INFO] [stdout] 1683 - _ => false, [INFO] [stdout] 1684 - } [INFO] [stdout] 1681 + matches!(*self, Expr::ExprLitInt(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1695:9 [INFO] [stdout] | [INFO] [stdout] 1695 | / match *self { [INFO] [stdout] 1696 | | Expr::ExprTemplate(_) => true, [INFO] [stdout] 1697 | | _ => false, [INFO] [stdout] 1698 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1695 - match *self { [INFO] [stdout] 1696 - Expr::ExprTemplate(_) => true, [INFO] [stdout] 1697 - _ => false, [INFO] [stdout] 1698 - } [INFO] [stdout] 1695 + matches!(*self, Expr::ExprTemplate(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1709:9 [INFO] [stdout] | [INFO] [stdout] 1709 | / match *self { [INFO] [stdout] 1710 | | Expr::ExprLitFloat(_) => true, [INFO] [stdout] 1711 | | _ => false, [INFO] [stdout] 1712 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1709 - match *self { [INFO] [stdout] 1710 - Expr::ExprLitFloat(_) => true, [INFO] [stdout] 1711 - _ => false, [INFO] [stdout] 1712 - } [INFO] [stdout] 1709 + matches!(*self, Expr::ExprLitFloat(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1723:9 [INFO] [stdout] | [INFO] [stdout] 1723 | / match *self { [INFO] [stdout] 1724 | | Expr::ExprLitStr(_) => true, [INFO] [stdout] 1725 | | _ => false, [INFO] [stdout] 1726 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1723 - match *self { [INFO] [stdout] 1724 - Expr::ExprLitStr(_) => true, [INFO] [stdout] 1725 - _ => false, [INFO] [stdout] 1726 - } [INFO] [stdout] 1723 + matches!(*self, Expr::ExprLitStr(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1737:9 [INFO] [stdout] | [INFO] [stdout] 1737 | / match *self { [INFO] [stdout] 1738 | | Expr::ExprLitBool(_) => true, [INFO] [stdout] 1739 | | _ => false, [INFO] [stdout] 1740 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1737 - match *self { [INFO] [stdout] 1738 - Expr::ExprLitBool(_) => true, [INFO] [stdout] 1739 - _ => false, [INFO] [stdout] 1740 - } [INFO] [stdout] 1737 + matches!(*self, Expr::ExprLitBool(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1744:9 [INFO] [stdout] | [INFO] [stdout] 1744 | / match *self { [INFO] [stdout] 1745 | | Expr::ExprLitBool(ref lit) if lit.value => true, [INFO] [stdout] 1746 | | _ => false, [INFO] [stdout] 1747 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1744 - match *self { [INFO] [stdout] 1745 - Expr::ExprLitBool(ref lit) if lit.value => true, [INFO] [stdout] 1746 - _ => false, [INFO] [stdout] 1747 - } [INFO] [stdout] 1744 + matches!(*self, Expr::ExprLitBool(ref lit) if lit.value) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1758:9 [INFO] [stdout] | [INFO] [stdout] 1758 | / match *self { [INFO] [stdout] 1759 | | Expr::ExprDot(_) => true, [INFO] [stdout] 1760 | | _ => false, [INFO] [stdout] 1761 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1758 - match *self { [INFO] [stdout] 1759 - Expr::ExprDot(_) => true, [INFO] [stdout] 1760 - _ => false, [INFO] [stdout] 1761 - } [INFO] [stdout] 1758 + matches!(*self, Expr::ExprDot(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1772:9 [INFO] [stdout] | [INFO] [stdout] 1772 | / match *self { [INFO] [stdout] 1773 | | Expr::ExprDelegation(_) => true, [INFO] [stdout] 1774 | | _ => false, [INFO] [stdout] 1775 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1772 - match *self { [INFO] [stdout] 1773 - Expr::ExprDelegation(_) => true, [INFO] [stdout] 1774 - _ => false, [INFO] [stdout] 1775 - } [INFO] [stdout] 1772 + matches!(*self, Expr::ExprDelegation(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1779:9 [INFO] [stdout] | [INFO] [stdout] 1779 | / match *self { [INFO] [stdout] 1780 | | Expr::ExprSelf(_) => true, [INFO] [stdout] 1781 | | _ => false, [INFO] [stdout] 1782 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1779 - match *self { [INFO] [stdout] 1780 - Expr::ExprSelf(_) => true, [INFO] [stdout] 1781 - _ => false, [INFO] [stdout] 1782 - } [INFO] [stdout] 1779 + matches!(*self, Expr::ExprSelf(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1786:9 [INFO] [stdout] | [INFO] [stdout] 1786 | / match *self { [INFO] [stdout] 1787 | | Expr::ExprSuper(_) => true, [INFO] [stdout] 1788 | | _ => false, [INFO] [stdout] 1789 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1786 - match *self { [INFO] [stdout] 1787 - Expr::ExprSuper(_) => true, [INFO] [stdout] 1788 - _ => false, [INFO] [stdout] 1789 - } [INFO] [stdout] 1786 + matches!(*self, Expr::ExprSuper(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1800:9 [INFO] [stdout] | [INFO] [stdout] 1800 | / match *self { [INFO] [stdout] 1801 | | Expr::ExprNil(_) => true, [INFO] [stdout] 1802 | | _ => false, [INFO] [stdout] 1803 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1800 - match *self { [INFO] [stdout] 1801 - Expr::ExprNil(_) => true, [INFO] [stdout] 1802 - _ => false, [INFO] [stdout] 1803 - } [INFO] [stdout] 1800 + matches!(*self, Expr::ExprNil(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1814:9 [INFO] [stdout] | [INFO] [stdout] 1814 | / match *self { [INFO] [stdout] 1815 | | Expr::ExprConv(_) => true, [INFO] [stdout] 1816 | | _ => false, [INFO] [stdout] 1817 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1814 - match *self { [INFO] [stdout] 1815 - Expr::ExprConv(_) => true, [INFO] [stdout] 1816 - _ => false, [INFO] [stdout] 1817 - } [INFO] [stdout] 1814 + matches!(*self, Expr::ExprConv(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1828:9 [INFO] [stdout] | [INFO] [stdout] 1828 | / match *self { [INFO] [stdout] 1829 | | Expr::ExprTry(_) => true, [INFO] [stdout] 1830 | | _ => false, [INFO] [stdout] 1831 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1828 - match *self { [INFO] [stdout] 1829 - Expr::ExprTry(_) => true, [INFO] [stdout] 1830 - _ => false, [INFO] [stdout] 1831 - } [INFO] [stdout] 1828 + matches!(*self, Expr::ExprTry(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1842:9 [INFO] [stdout] | [INFO] [stdout] 1842 | / match self { [INFO] [stdout] 1843 | | &Expr::ExprLambda(_) => true, [INFO] [stdout] 1844 | | _ => false, [INFO] [stdout] 1845 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1842 - match self { [INFO] [stdout] 1843 - &Expr::ExprLambda(_) => true, [INFO] [stdout] 1844 - _ => false, [INFO] [stdout] 1845 - } [INFO] [stdout] 1842 + matches!(self, &Expr::ExprLambda(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1856:9 [INFO] [stdout] | [INFO] [stdout] 1856 | / match *self { [INFO] [stdout] 1857 | | Expr::ExprTuple(_) => true, [INFO] [stdout] 1858 | | _ => false, [INFO] [stdout] 1859 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1856 - match *self { [INFO] [stdout] 1857 - Expr::ExprTuple(_) => true, [INFO] [stdout] 1858 - _ => false, [INFO] [stdout] 1859 - } [INFO] [stdout] 1856 + matches!(*self, Expr::ExprTuple(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1870:9 [INFO] [stdout] | [INFO] [stdout] 1870 | / match self { [INFO] [stdout] 1871 | | &Expr::ExprBlock(_) => true, [INFO] [stdout] 1872 | | _ => false, [INFO] [stdout] 1873 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1870 - match self { [INFO] [stdout] 1871 - &Expr::ExprBlock(_) => true, [INFO] [stdout] 1872 - _ => false, [INFO] [stdout] 1873 - } [INFO] [stdout] 1870 + matches!(self, &Expr::ExprBlock(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1884:9 [INFO] [stdout] | [INFO] [stdout] 1884 | / match *self { [INFO] [stdout] 1885 | | Expr::ExprIf(_) => true, [INFO] [stdout] 1886 | | _ => false, [INFO] [stdout] 1887 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1884 - match *self { [INFO] [stdout] 1885 - Expr::ExprIf(_) => true, [INFO] [stdout] 1886 - _ => false, [INFO] [stdout] 1887 - } [INFO] [stdout] 1884 + matches!(*self, Expr::ExprIf(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:1891:9 [INFO] [stdout] | [INFO] [stdout] 1891 | / match self { [INFO] [stdout] 1892 | | &Expr::ExprBlock(_) => false, [INFO] [stdout] 1893 | | &Expr::ExprIf(_) => false, [INFO] [stdout] 1894 | | _ => true, [INFO] [stdout] 1895 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 1891 - match self { [INFO] [stdout] 1892 - &Expr::ExprBlock(_) => false, [INFO] [stdout] 1893 - &Expr::ExprIf(_) => false, [INFO] [stdout] 1894 - _ => true, [INFO] [stdout] 1895 - } [INFO] [stdout] 1891 + !matches!(self, &Expr::ExprBlock(_) | &Expr::ExprIf(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you don't need to add `&` to all patterns [INFO] [stdout] --> src/ast.rs:1891:9 [INFO] [stdout] | [INFO] [stdout] 1891 | / match self { [INFO] [stdout] 1892 | | &Expr::ExprBlock(_) => false, [INFO] [stdout] 1893 | | &Expr::ExprIf(_) => false, [INFO] [stdout] 1894 | | _ => true, [INFO] [stdout] 1895 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stdout] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stdout] | [INFO] [stdout] 1891 ~ match *self { [INFO] [stdout] 1892 ~ Expr::ExprBlock(_) => false, [INFO] [stdout] 1893 ~ Expr::ExprIf(_) => false, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:2034:9 [INFO] [stdout] | [INFO] [stdout] 2034 | / match self { [INFO] [stdout] 2035 | | &TryMode::Normal => true, [INFO] [stdout] 2036 | | _ => false, [INFO] [stdout] 2037 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 2034 - match self { [INFO] [stdout] 2035 - &TryMode::Normal => true, [INFO] [stdout] 2036 - _ => false, [INFO] [stdout] 2037 - } [INFO] [stdout] 2034 + matches!(self, &TryMode::Normal) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:2041:9 [INFO] [stdout] | [INFO] [stdout] 2041 | / match self { [INFO] [stdout] 2042 | | &TryMode::Else(_) => true, [INFO] [stdout] 2043 | | _ => false, [INFO] [stdout] 2044 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 2041 - match self { [INFO] [stdout] 2042 - &TryMode::Else(_) => true, [INFO] [stdout] 2043 - _ => false, [INFO] [stdout] 2044 - } [INFO] [stdout] 2041 + matches!(self, &TryMode::Else(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:2048:9 [INFO] [stdout] | [INFO] [stdout] 2048 | / match self { [INFO] [stdout] 2049 | | &TryMode::Force => true, [INFO] [stdout] 2050 | | _ => false, [INFO] [stdout] 2051 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 2048 - match self { [INFO] [stdout] 2049 - &TryMode::Force => true, [INFO] [stdout] 2050 - _ => false, [INFO] [stdout] 2051 - } [INFO] [stdout] 2048 + matches!(self, &TryMode::Force) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/ast.rs:2055:9 [INFO] [stdout] | [INFO] [stdout] 2055 | / match self { [INFO] [stdout] 2056 | | &TryMode::Opt => true, [INFO] [stdout] 2057 | | _ => false, [INFO] [stdout] 2058 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 2055 - match self { [INFO] [stdout] 2056 - &TryMode::Opt => true, [INFO] [stdout] 2057 - _ => false, [INFO] [stdout] 2058 - } [INFO] [stdout] 2055 + matches!(self, &TryMode::Opt) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/builder.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 175 | stmts: Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `Vec` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_box [INFO] [stdout] = note: `#[warn(clippy::vec_box)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/builder.rs:186:44 [INFO] [stdout] | [INFO] [stdout] 186 | pub fn add_stmts(&mut self, mut stmts: Vec>) -> &mut BuilderBlock<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `Vec` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/interner.rs:42:14 [INFO] [stdout] | [INFO] [stdout] 42 | fn deref<'a>(&'a self) -> &'a String { [INFO] [stdout] | ^^ ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] = note: `#[warn(clippy::needless_lifetimes)]` on by default [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 42 - fn deref<'a>(&'a self) -> &'a String { [INFO] [stdout] 42 + fn deref(&self) -> &String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Interner` [INFO] [stdout] --> src/interner.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | / pub fn new() -> Interner { [INFO] [stdout] 58 | | Interner { [INFO] [stdout] 59 | | data: Mutex::new(Internal { [INFO] [stdout] 60 | | map: HashMap::new(), [INFO] [stdout] ... | [INFO] [stdout] 64 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 56 + impl Default for Interner { [INFO] [stdout] 57 + fn default() -> Self { [INFO] [stdout] 58 + Self::new() [INFO] [stdout] 59 + } [INFO] [stdout] 60 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/lexer/position.rs:75:23 [INFO] [stdout] | [INFO] [stdout] 75 | assert!(pos < u32::max_value()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] = note: `#[warn(clippy::legacy_numeric_constants)]` on by default [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 75 - assert!(pos < u32::max_value()); [INFO] [stdout] 75 + assert!(pos < u32::MAX); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/lexer/position.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | Loc(u32::max_value()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 80 - Loc(u32::max_value()) [INFO] [stdout] 80 + Loc(u32::MAX) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/lexer/position.rs:84:19 [INFO] [stdout] | [INFO] [stdout] 84 | self.0 != u32::max_value() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 84 - self.0 != u32::max_value() [INFO] [stdout] 84 + self.0 != u32::MAX [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/lexer/reader.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 108 | / let reader = Reader { [INFO] [stdout] 109 | | name, [INFO] [stdout] 110 | | content, [INFO] [stdout] 111 | | line_ends: Vec::new(), [INFO] [stdout] ... | [INFO] [stdout] 115 | | tabwidth: 4, [INFO] [stdout] 116 | | }; [INFO] [stdout] | |______- unnecessary `let` binding [INFO] [stdout] 117 | [INFO] [stdout] 118 | reader [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 108 ~ [INFO] [stdout] 109 | [INFO] [stdout] 110 ~ Reader { [INFO] [stdout] 111 + name, [INFO] [stdout] 112 + content, [INFO] [stdout] 113 + line_ends: Vec::new(), [INFO] [stdout] 114 + [INFO] [stdout] 115 + idx: 0, [INFO] [stdout] 116 + pos: Position::new(1, 1), [INFO] [stdout] 117 + tabwidth: 4, [INFO] [stdout] 118 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `from_str` can be confused for the standard trait method `std::str::FromStr::from_str` [INFO] [stdout] --> src/lexer.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | / pub fn from_str(code: &str) -> Lexer { [INFO] [stdout] 27 | | let reader = Reader::from_string("<>", code); [INFO] [stdout] 28 | | Lexer::new(reader) [INFO] [stdout] 29 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: consider implementing the trait `std::str::FromStr` or choosing a less ambiguous method name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stdout] = note: `#[warn(clippy::should_implement_trait)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> src/lexer.rs:49:20 [INFO] [stdout] | [INFO] [stdout] 49 | if let None = ch { [INFO] [stdout] | -------^^^^----- help: try: `if ch.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lexer.rs:82:15 [INFO] [stdout] | [INFO] [stdout] 82 | while !self.curr().is_none() && !is_newline(self.curr()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.curr().is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lexer.rs:95:15 [INFO] [stdout] | [INFO] [stdout] 95 | while !self.curr().is_none() && !self.is_multi_comment_end() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.curr().is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `char::is_digit` with literal radix of 10 [INFO] [stdout] --> src/lexer.rs:526:17 [INFO] [stdout] | [INFO] [stdout] 526 | ch.map(|ch| ch.is_digit(10)).unwrap_or(false) [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `ch.is_ascii_digit()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#is_digit_ascii_radix [INFO] [stdout] = note: `#[warn(clippy::is_digit_ascii_radix)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lexer.rs:557:21 [INFO] [stdout] | [INFO] [stdout] 557 | Some(ch) => (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') || ch == '_', [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `('a'..='z').contains(&ch)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> src/lexer.rs:557:49 [INFO] [stdout] | [INFO] [stdout] 557 | Some(ch) => (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') || ch == '_', [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `('A'..='Z').contains(&ch)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/parser.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 49 | / let parser = Parser { [INFO] [stdout] 50 | | lexer, [INFO] [stdout] 51 | | token, [INFO] [stdout] 52 | | id_generator, [INFO] [stdout] ... | [INFO] [stdout] 58 | | last_end: Some(0), [INFO] [stdout] 59 | | }; [INFO] [stdout] | |__________- unnecessary `let` binding [INFO] [stdout] 60 | [INFO] [stdout] 61 | parser [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 49 ~ [INFO] [stdout] 50 | [INFO] [stdout] 51 ~ Parser { [INFO] [stdout] 52 + lexer, [INFO] [stdout] 53 + token, [INFO] [stdout] 54 + id_generator, [INFO] [stdout] 55 + interner, [INFO] [stdout] 56 + param_idx: 0, [INFO] [stdout] 57 + in_class_or_module: false, [INFO] [stdout] 58 + parse_struct_lit: true, [INFO] [stdout] 59 + ast, [INFO] [stdout] 60 + last_end: Some(0), [INFO] [stdout] 61 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/parser.rs:519:55 [INFO] [stdout] | [INFO] [stdout] 519 | fn parse_parent_class_params(&mut self) -> Result>, ParseErrorAndPos> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `Vec` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take` [INFO] [stdout] --> src/parser.rs:2062:25 [INFO] [stdout] | [INFO] [stdout] 2062 | block.add_stmts(mem::replace(&mut cls.initializers, Vec::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `std::mem::take(&mut cls.initializers)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mem_replace_with_default [INFO] [stdout] = note: `#[warn(clippy::mem_replace_with_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/parser.rs:2083:15 [INFO] [stdout] | [INFO] [stdout] 2083 | pub args: Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `Vec` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `NodeIdGenerator` [INFO] [stdout] --> src/parser.rs:2092:5 [INFO] [stdout] | [INFO] [stdout] 2092 | / pub fn new() -> NodeIdGenerator { [INFO] [stdout] 2093 | | NodeIdGenerator { [INFO] [stdout] 2094 | | value: RefCell::new(1), [INFO] [stdout] 2095 | | } [INFO] [stdout] 2096 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 2091 + impl Default for NodeIdGenerator { [INFO] [stdout] 2092 + fn default() -> Self { [INFO] [stdout] 2093 + Self::new() [INFO] [stdout] 2094 + } [INFO] [stdout] 2095 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2263:9 [INFO] [stdout] | [INFO] [stdout] 2263 | assert_eq!(true, lit.value); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_assert_comparison)]` on by default [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2263 - assert_eq!(true, lit.value); [INFO] [stdout] 2263 + assert!(lit.value); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2271:9 [INFO] [stdout] | [INFO] [stdout] 2271 | assert_eq!(true, lit.value); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2271 - assert_eq!(true, lit.value); [INFO] [stdout] 2271 + assert!(lit.value); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2726:9 [INFO] [stdout] | [INFO] [stdout] 2726 | assert_eq!(false, var.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2726 - assert_eq!(false, var.reassignable); [INFO] [stdout] 2726 + assert!(!var.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2736:9 [INFO] [stdout] | [INFO] [stdout] 2736 | assert_eq!(true, var.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2736 - assert_eq!(true, var.reassignable); [INFO] [stdout] 2736 + assert!(var.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2746:9 [INFO] [stdout] | [INFO] [stdout] 2746 | assert_eq!(false, var.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2746 - assert_eq!(false, var.reassignable); [INFO] [stdout] 2746 + assert!(!var.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2756:9 [INFO] [stdout] | [INFO] [stdout] 2756 | assert_eq!(true, var.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2756 - assert_eq!(true, var.reassignable); [INFO] [stdout] 2756 + assert!(var.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2766:9 [INFO] [stdout] | [INFO] [stdout] 2766 | assert_eq!(false, var.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2766 - assert_eq!(false, var.reassignable); [INFO] [stdout] 2766 + assert!(!var.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2776:9 [INFO] [stdout] | [INFO] [stdout] 2776 | assert_eq!(true, var.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2776 - assert_eq!(true, var.reassignable); [INFO] [stdout] 2776 + assert!(var.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2786:9 [INFO] [stdout] | [INFO] [stdout] 2786 | assert_eq!(false, var.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2786 - assert_eq!(false, var.reassignable); [INFO] [stdout] 2786 + assert!(!var.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2796:9 [INFO] [stdout] | [INFO] [stdout] 2796 | assert_eq!(true, var.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2796 - assert_eq!(true, var.reassignable); [INFO] [stdout] 2796 + assert!(var.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2807:9 [INFO] [stdout] | [INFO] [stdout] 2807 | assert_eq!(false, f.method); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2807 - assert_eq!(false, f.method); [INFO] [stdout] 2807 + assert!(!f.method); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:2812:9 [INFO] [stdout] | [INFO] [stdout] 2812 | assert_eq!(false, g.method); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 2812 - assert_eq!(false, g.method); [INFO] [stdout] 2812 + assert!(!g.method); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3040:9 [INFO] [stdout] | [INFO] [stdout] 3040 | assert_eq!(true, mtd1.method); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3040 - assert_eq!(true, mtd1.method); [INFO] [stdout] 3040 + assert!(mtd1.method); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3047:9 [INFO] [stdout] | [INFO] [stdout] 3047 | assert_eq!(true, mtd2.method); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3047 - assert_eq!(true, mtd2.method); [INFO] [stdout] 3047 + assert!(mtd2.method); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3066:9 [INFO] [stdout] | [INFO] [stdout] 3066 | assert_eq!(true, mtd1.is_abstract); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3066 - assert_eq!(true, mtd1.is_abstract); [INFO] [stdout] 3066 + assert!(mtd1.is_abstract); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3069:9 [INFO] [stdout] | [INFO] [stdout] 3069 | assert_eq!(false, mtd2.is_abstract); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3069 - assert_eq!(false, mtd2.is_abstract); [INFO] [stdout] 3069 + assert!(!mtd2.is_abstract); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3078:9 [INFO] [stdout] | [INFO] [stdout] 3078 | assert_eq!(false, class.has_open); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3078 - assert_eq!(false, class.has_open); [INFO] [stdout] 3078 + assert!(!class.has_open); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3079:9 [INFO] [stdout] | [INFO] [stdout] 3079 | assert_eq!(false, class.is_abstract); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3079 - assert_eq!(false, class.is_abstract); [INFO] [stdout] 3079 + assert!(!class.is_abstract); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3089:9 [INFO] [stdout] | [INFO] [stdout] 3089 | assert_eq!(true, class.is_abstract); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3089 - assert_eq!(true, class.is_abstract); [INFO] [stdout] 3089 + assert!(class.is_abstract); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3099:9 [INFO] [stdout] | [INFO] [stdout] 3099 | assert_eq!(true, class.has_open); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3099 - assert_eq!(true, class.has_open); [INFO] [stdout] 3099 + assert!(class.has_open); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3111:9 [INFO] [stdout] | [INFO] [stdout] 3111 | assert_eq!(true, class.has_constructor); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3111 - assert_eq!(true, class.has_constructor); [INFO] [stdout] 3111 + assert!(class.has_constructor); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3113:9 [INFO] [stdout] | [INFO] [stdout] 3113 | assert_eq!(false, ctor.params[0].reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3113 - assert_eq!(false, ctor.params[0].reassignable); [INFO] [stdout] 3113 + assert!(!ctor.params[0].reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3122:9 [INFO] [stdout] | [INFO] [stdout] 3122 | assert_eq!(true, class.fields[0].reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3122 - assert_eq!(true, class.fields[0].reassignable); [INFO] [stdout] 3122 + assert!(class.fields[0].reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3123:9 [INFO] [stdout] | [INFO] [stdout] 3123 | assert_eq!(true, class.has_constructor); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3123 - assert_eq!(true, class.has_constructor); [INFO] [stdout] 3123 + assert!(class.has_constructor); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3134:9 [INFO] [stdout] | [INFO] [stdout] 3134 | assert_eq!(false, class.fields[0].reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3134 - assert_eq!(false, class.fields[0].reassignable); [INFO] [stdout] 3134 + assert!(!class.fields[0].reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3135:9 [INFO] [stdout] | [INFO] [stdout] 3135 | assert_eq!(true, class.has_constructor); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3135 - assert_eq!(true, class.has_constructor); [INFO] [stdout] 3135 + assert!(class.has_constructor); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3137:9 [INFO] [stdout] | [INFO] [stdout] 3137 | assert_eq!(false, ctor.params[0].reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3137 - assert_eq!(false, ctor.params[0].reassignable); [INFO] [stdout] 3137 + assert!(!ctor.params[0].reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3167:9 [INFO] [stdout] | [INFO] [stdout] 3167 | assert_eq!(true, class.has_open); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3167 - assert_eq!(true, class.has_open); [INFO] [stdout] 3167 + assert!(class.has_open); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3295:9 [INFO] [stdout] | [INFO] [stdout] 3295 | assert_eq!(true, f1.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3295 - assert_eq!(true, f1.reassignable); [INFO] [stdout] 3295 + assert!(f1.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3299:9 [INFO] [stdout] | [INFO] [stdout] 3299 | assert_eq!(false, f2.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3299 - assert_eq!(false, f2.reassignable); [INFO] [stdout] 3299 + assert!(!f2.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3308:9 [INFO] [stdout] | [INFO] [stdout] 3308 | assert_eq!(true, m1.has_open); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3308 - assert_eq!(true, m1.has_open); [INFO] [stdout] 3308 + assert!(m1.has_open); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3311:9 [INFO] [stdout] | [INFO] [stdout] 3311 | assert_eq!(false, m2.has_open); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3311 - assert_eq!(false, m2.has_open); [INFO] [stdout] 3311 + assert!(!m2.has_open); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3324:9 [INFO] [stdout] | [INFO] [stdout] 3324 | assert_eq!(false, m1.has_override); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3324 - assert_eq!(false, m1.has_override); [INFO] [stdout] 3324 + assert!(!m1.has_override); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3325:9 [INFO] [stdout] | [INFO] [stdout] 3325 | assert_eq!(false, m1.has_open); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3325 - assert_eq!(false, m1.has_open); [INFO] [stdout] 3325 + assert!(!m1.has_open); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3328:9 [INFO] [stdout] | [INFO] [stdout] 3328 | assert_eq!(true, m2.has_override); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3328 - assert_eq!(true, m2.has_override); [INFO] [stdout] 3328 + assert!(m2.has_override); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3329:9 [INFO] [stdout] | [INFO] [stdout] 3329 | assert_eq!(false, m2.has_open); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3329 - assert_eq!(false, m2.has_open); [INFO] [stdout] 3329 + assert!(!m2.has_open); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3332:9 [INFO] [stdout] | [INFO] [stdout] 3332 | assert_eq!(false, m3.has_override); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3332 - assert_eq!(false, m3.has_override); [INFO] [stdout] 3332 + assert!(!m3.has_override); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3333:9 [INFO] [stdout] | [INFO] [stdout] 3333 | assert_eq!(true, m3.has_open); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3333 - assert_eq!(true, m3.has_open); [INFO] [stdout] 3333 + assert!(m3.has_open); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3351:9 [INFO] [stdout] | [INFO] [stdout] 3351 | assert_eq!(true, m1.has_override); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3351 - assert_eq!(true, m1.has_override); [INFO] [stdout] 3351 + assert!(m1.has_override); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3352:9 [INFO] [stdout] | [INFO] [stdout] 3352 | assert_eq!(false, m1.has_open); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3352 - assert_eq!(false, m1.has_open); [INFO] [stdout] 3352 + assert!(!m1.has_open); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3353:9 [INFO] [stdout] | [INFO] [stdout] 3353 | assert_eq!(true, m1.has_final); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3353 - assert_eq!(true, m1.has_final); [INFO] [stdout] 3353 + assert!(m1.has_final); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3360:9 [INFO] [stdout] | [INFO] [stdout] 3360 | assert_eq!(true, expr.object.is_ident()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3360 - assert_eq!(true, expr.object.is_ident()); [INFO] [stdout] 3360 + assert!(expr.object.is_ident()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3361:9 [INFO] [stdout] | [INFO] [stdout] 3361 | assert_eq!(true, expr.is); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3361 - assert_eq!(true, expr.is); [INFO] [stdout] 3361 + assert!(expr.is); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3368:9 [INFO] [stdout] | [INFO] [stdout] 3368 | assert_eq!(true, expr.object.is_ident()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3368 - assert_eq!(true, expr.object.is_ident()); [INFO] [stdout] 3368 + assert!(expr.object.is_ident()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3369:9 [INFO] [stdout] | [INFO] [stdout] 3369 | assert_eq!(false, expr.is); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3369 - assert_eq!(false, expr.is); [INFO] [stdout] 3369 + assert!(!expr.is); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3580:9 [INFO] [stdout] | [INFO] [stdout] 3580 | assert_eq!(false, xtrait.methods[0].is_static); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3580 - assert_eq!(false, xtrait.methods[0].is_static); [INFO] [stdout] 3580 + assert!(!xtrait.methods[0].is_static); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3590:9 [INFO] [stdout] | [INFO] [stdout] 3590 | assert_eq!(true, xtrait.methods[0].is_static); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3590 - assert_eq!(true, xtrait.methods[0].is_static); [INFO] [stdout] 3590 + assert!(xtrait.methods[0].is_static); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3617:9 [INFO] [stdout] | [INFO] [stdout] 3617 | assert_eq!(false, ximpl.methods[0].is_static); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3617 - assert_eq!(false, ximpl.methods[0].is_static); [INFO] [stdout] 3617 + assert!(!ximpl.methods[0].is_static); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3631:9 [INFO] [stdout] | [INFO] [stdout] 3631 | assert_eq!(true, ximpl.methods[0].is_static); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3631 - assert_eq!(true, ximpl.methods[0].is_static); [INFO] [stdout] 3631 + assert!(ximpl.methods[0].is_static); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3640:9 [INFO] [stdout] | [INFO] [stdout] 3640 | assert_eq!(true, global.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3640 - assert_eq!(true, global.reassignable); [INFO] [stdout] 3640 + assert!(global.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/parser.rs:3649:9 [INFO] [stdout] | [INFO] [stdout] 3649 | assert_eq!(false, global.reassignable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 3649 - assert_eq!(false, global.reassignable); [INFO] [stdout] 3649 + assert!(!global.reassignable); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ast.rs:580:17 [INFO] [stdout] | [INFO] [stdout] 580 | pub fn iter(&self) -> Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 580 | pub fn iter(&self) -> Iter<'_, ModifierElement> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/parser.rs:2124:44 [INFO] [stdout] | [INFO] [stdout] 2124 | assert!(parser.init().is_ok(), true); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 2124 | assert!(parser.init().is_ok(), "{}", true); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/parser.rs:2146:44 [INFO] [stdout] | [INFO] [stdout] 2146 | assert!(parser.init().is_ok(), true); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 2146 | assert!(parser.init().is_ok(), "{}", true); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/parser.rs:2161:40 [INFO] [stdout] | [INFO] [stdout] 2161 | assert!(parser.init().is_ok(), true); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 2161 | assert!(parser.init().is_ok(), "{}", true); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/parser.rs:2174:44 [INFO] [stdout] | [INFO] [stdout] 2174 | assert!(parser.init().is_ok(), true); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 2174 | assert!(parser.init().is_ok(), "{}", true); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/parser.rs:2190:44 [INFO] [stdout] | [INFO] [stdout] 2190 | assert!(parser.init().is_ok(), true); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 2190 | assert!(parser.init().is_ok(), "{}", true); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.55s [INFO] running `Command { std: "docker" "inspect" "32ede05e69fb9ca9295bea9ef88bdd3f2ee89fefebf3e19262482e10eea0c8a4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "32ede05e69fb9ca9295bea9ef88bdd3f2ee89fefebf3e19262482e10eea0c8a4", kill_on_drop: false }` [INFO] [stdout] 32ede05e69fb9ca9295bea9ef88bdd3f2ee89fefebf3e19262482e10eea0c8a4