[INFO] fetching crate antlr-rust 0.3.0-beta... [INFO] linting antlr-rust-0.3.0-beta against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate antlr-rust 0.3.0-beta into /workspace/builds/worker-4-tc1/source [INFO] started tweaking crates.io crate antlr-rust 0.3.0-beta [INFO] finished tweaking crates.io crate antlr-rust 0.3.0-beta [INFO] tweaked toml for crates.io crate antlr-rust 0.3.0-beta written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate antlr-rust 0.3.0-beta 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 22 packages to latest compatible versions [INFO] [stderr] Adding bit-set v0.5.3 (available: v0.9.1) [INFO] [stderr] Adding murmur3 v0.4.1 (available: v0.5.2) [INFO] [stderr] Adding parking_lot v0.11.2 (available: v0.12.5) [INFO] [stderr] Adding uuid v0.8.2 (available: v1.22.0) [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 murmur3 v0.4.1 [INFO] [stderr] Downloaded better_any v0.2.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 06623e268c8499d85980c33cd642e42259e18176bc101560a5db640da7ae4061 [INFO] running `Command { std: "docker" "start" "-a" "06623e268c8499d85980c33cd642e42259e18176bc101560a5db640da7ae4061", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "06623e268c8499d85980c33cd642e42259e18176bc101560a5db640da7ae4061", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "06623e268c8499d85980c33cd642e42259e18176bc101560a5db640da7ae4061", kill_on_drop: false }` [INFO] [stdout] 06623e268c8499d85980c33cd642e42259e18176bc101560a5db640da7ae4061 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 388733b4e77e366f595b26c36e9161d7bed85ea8af077ccc35c86adb0be7202e [INFO] running `Command { std: "docker" "start" "-a" "388733b4e77e366f595b26c36e9161d7bed85ea8af077ccc35c86adb0be7202e", kill_on_drop: false }` [INFO] [stderr] Checking better_any v0.2.1 [INFO] [stderr] Checking uuid v0.8.2 [INFO] [stderr] Checking murmur3 v0.4.1 [INFO] [stderr] Checking bit-set v0.5.3 [INFO] [stderr] Checking parking_lot_core v0.8.6 [INFO] [stderr] Checking parking_lot v0.11.2 [INFO] [stderr] Checking antlr-rust v0.3.0-beta (/opt/rustwide/workdir) [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | /// This method has the following [INFO] [stdout] | ^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] = note: `#[warn(clippy::tabs_in_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | /// before calling this method is less than the value of `index` [INFO] [stdout] | ^^^^^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | /// after calling this method. [INFO] [stdout] | ^^^^^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | /// calling this method becomes the value of {@code LA(-1)} after calling [INFO] [stdout] | ^^^^^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | /// this method. [INFO] [stdout] | ^^^^^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | /// This method has the following [INFO] [stdout] | ^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] = note: `#[warn(clippy::tabs_in_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | /// before calling this method is less than the value of `index` [INFO] [stdout] | ^^^^^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | /// after calling this method. [INFO] [stdout] | ^^^^^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | /// calling this method becomes the value of {@code LA(-1)} after calling [INFO] [stdout] | ^^^^^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/int_stream.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | /// this method. [INFO] [stdout] | ^^^^^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> src/recognizer.rs:9:27 [INFO] [stdout] | [INFO] [stdout] 9 | pub const VERSION_MAJOR: &'static str = env!("CARGO_PKG_VERSION_MAJOR"); [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] = note: `#[warn(clippy::redundant_static_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> src/recognizer.rs:12:27 [INFO] [stdout] | [INFO] [stdout] 12 | pub const VERSION_MINOR: &'static str = env!("CARGO_PKG_VERSION_MINOR"); [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> src/recognizer.rs:9:27 [INFO] [stdout] | [INFO] [stdout] 9 | pub const VERSION_MAJOR: &'static str = env!("CARGO_PKG_VERSION_MAJOR"); [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] = note: `#[warn(clippy::redundant_static_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> src/recognizer.rs:12:27 [INFO] [stdout] | [INFO] [stdout] 12 | pub const VERSION_MINOR: &'static str = env!("CARGO_PKG_VERSION_MINOR"); [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute `allow` [INFO] [stdout] --> src/token_factory.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | #[allow(non_upper_case_globals)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `lazy_static` [INFO] [stdout] --> src/token_factory.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | lazy_static! { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tid` [INFO] [stdout] --> src/token_factory.rs:15:18 [INFO] [stdout] | [INFO] [stdout] 15 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute `allow` [INFO] [stdout] --> src/token_factory.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | #[allow(non_upper_case_globals)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `lazy_static` [INFO] [stdout] --> src/token_factory.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | lazy_static! { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tid` [INFO] [stdout] --> src/token_factory.rs:15:18 [INFO] [stdout] | [INFO] [stdout] 15 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TidAble` and `Tid` [INFO] [stdout] --> src/token_stream.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> src/transition.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | const _TRANSITION_NAMES: [&'static str; 11] = [ [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::atn::INVALID_ALT` [INFO] [stdout] --> src/tree.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::atn::INVALID_ALT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RuleContextExt` [INFO] [stdout] --> src/tree.rs:16:53 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::parser_rule_context::{ParserRuleContext, RuleContextExt}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TidAble` and `Tid` [INFO] [stdout] --> src/tree.rs:22:18 [INFO] [stdout] | [INFO] [stdout] 22 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/tree.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 79 | /// added to the parse trees, they will not appear in the output of this [INFO] [stdout] | ^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/tree.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | /// method. [INFO] [stdout] | ^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after doc comment [INFO] [stdout] --> src/tree.rs:97:1 [INFO] [stdout] | [INFO] [stdout] 97 | / /// Already implemented for all rule contexts [INFO] [stdout] ... | [INFO] [stdout] 117 | | [INFO] [stdout] | |_^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub struct NoError; [INFO] [stdout] | ------------------ the comment documents this struct [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_doc_comments)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] help: if the doc comment should not document struct `NoError` then comment it out [INFO] [stdout] | [INFO] [stdout] 96 ~ // /// text of the node. [INFO] [stdout] 97 ~ // /// Already implemented for all rule contexts [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TidAble` and `Tid` [INFO] [stdout] --> src/token_stream.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after doc comment [INFO] [stdout] --> src/tree.rs:340:5 [INFO] [stdout] | [INFO] [stdout] 340 | / /// just to make api closer to java [INFO] [stdout] 341 | | [INFO] [stdout] | |_^ [INFO] [stdout] 342 | /// Called on terminal(leaf) node [INFO] [stdout] 343 | fn visit_terminal(&mut self, _node: &TerminalNode<'input, Node>) {} [INFO] [stdout] | ----------------- the comment documents this function [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] help: if the documentation should include the empty line include it in the comment [INFO] [stdout] | [INFO] [stdout] 341 | /// [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> src/transition.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | const _TRANSITION_NAMES: [&'static str; 11] = [ [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::atn::INVALID_ALT` [INFO] [stdout] --> src/tree.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::atn::INVALID_ALT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RuleContextExt` [INFO] [stdout] --> src/tree.rs:16:53 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::parser_rule_context::{ParserRuleContext, RuleContextExt}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TidAble` and `Tid` [INFO] [stdout] --> src/tree.rs:22:18 [INFO] [stdout] | [INFO] [stdout] 22 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/tree.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 79 | /// added to the parse trees, they will not appear in the output of this [INFO] [stdout] | ^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using tabs in doc comments is not recommended [INFO] [stdout] --> src/tree.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | /// method. [INFO] [stdout] | ^^^^ help: consider using four spaces per tab [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#tabs_in_doc_comments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after doc comment [INFO] [stdout] --> src/tree.rs:97:1 [INFO] [stdout] | [INFO] [stdout] 97 | / /// Already implemented for all rule contexts [INFO] [stdout] ... | [INFO] [stdout] 117 | | [INFO] [stdout] | |_^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub struct NoError; [INFO] [stdout] | ------------------ the comment documents this struct [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_doc_comments)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] help: if the doc comment should not document struct `NoError` then comment it out [INFO] [stdout] | [INFO] [stdout] 96 ~ // /// text of the node. [INFO] [stdout] 97 ~ // /// Already implemented for all rule contexts [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after doc comment [INFO] [stdout] --> src/tree.rs:340:5 [INFO] [stdout] | [INFO] [stdout] 340 | / /// just to make api closer to java [INFO] [stdout] 341 | | [INFO] [stdout] | |_^ [INFO] [stdout] 342 | /// Called on terminal(leaf) node [INFO] [stdout] 343 | fn visit_terminal(&mut self, _node: &TerminalNode<'input, Node>) {} [INFO] [stdout] | ----------------- the comment documents this function [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] help: if the documentation should include the empty line include it in the comment [INFO] [stdout] | [INFO] [stdout] 341 | /// [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TidAble` and `Tid` [INFO] [stdout] --> src/common_token_stream.rs:9:18 [INFO] [stdout] | [INFO] [stdout] 9 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TidAble` and `Tid` [INFO] [stdout] --> src/common_token_stream.rs:9:18 [INFO] [stdout] | [INFO] [stdout] 9 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `better_any::TidAble` [INFO] [stdout] --> src/input_stream.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use better_any::TidAble; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `better_any::TidAble` [INFO] [stdout] --> src/input_stream.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use better_any::TidAble; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tid` [INFO] [stdout] --> src/parser.rs:26:18 [INFO] [stdout] | [INFO] [stdout] 26 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tid` [INFO] [stdout] --> src/parser.rs:26:18 [INFO] [stdout] | [INFO] [stdout] 26 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `else` branch is empty [INFO] [stdout] --> src/parser_atn_simulator.rs:1046:15 [INFO] [stdout] | [INFO] [stdout] 1046 | } else { [INFO] [stdout] | _______________^ [INFO] [stdout] 1047 | | } [INFO] [stdout] | |_____________^ help: you can remove it [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_else [INFO] [stdout] = note: `#[warn(clippy::needless_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tid` [INFO] [stdout] --> src/rule_context.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 14 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `else` branch is empty [INFO] [stdout] --> src/parser_atn_simulator.rs:1046:15 [INFO] [stdout] | [INFO] [stdout] 1046 | } else { [INFO] [stdout] | _______________^ [INFO] [stdout] 1047 | | } [INFO] [stdout] | |_____________^ help: you can remove it [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_else [INFO] [stdout] = note: `#[warn(clippy::needless_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type of the `self` parameter does not need to be arbitrary [INFO] [stdout] --> src/lib.rs:222:22 [INFO] [stdout] | [INFO] [stdout] 222 | fn coerce_ref_to(self: &Self) -> &T; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_arbitrary_self_type [INFO] [stdout] = note: `#[warn(clippy::needless_arbitrary_self_type)]` on by default [INFO] [stdout] help: remove the type [INFO] [stdout] | [INFO] [stdout] 222 - fn coerce_ref_to(self: &Self) -> &T; [INFO] [stdout] 222 + fn coerce_ref_to(&self) -> &T; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type of the `self` parameter does not need to be arbitrary [INFO] [stdout] --> src/lib.rs:223:22 [INFO] [stdout] | [INFO] [stdout] 223 | fn coerce_mut_to(self: &mut Self) -> &mut T; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_arbitrary_self_type [INFO] [stdout] help: remove the type [INFO] [stdout] | [INFO] [stdout] 223 - fn coerce_mut_to(self: &mut Self) -> &mut T; [INFO] [stdout] 223 + fn coerce_mut_to(&mut self) -> &mut T; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type of the `self` parameter does not need to be arbitrary [INFO] [stdout] --> src/lib.rs:237:22 [INFO] [stdout] | [INFO] [stdout] 237 | fn coerce_ref_to(self: &Self) -> &T { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_arbitrary_self_type [INFO] [stdout] help: remove the type [INFO] [stdout] | [INFO] [stdout] 237 - fn coerce_ref_to(self: &Self) -> &T { [INFO] [stdout] 237 + fn coerce_ref_to(&self) -> &T { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type of the `self` parameter does not need to be arbitrary [INFO] [stdout] --> src/lib.rs:241:22 [INFO] [stdout] | [INFO] [stdout] 241 | fn coerce_mut_to(self: &mut Self) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_arbitrary_self_type [INFO] [stdout] help: remove the type [INFO] [stdout] | [INFO] [stdout] 241 - fn coerce_mut_to(self: &mut Self) -> &mut T { [INFO] [stdout] 241 + fn coerce_mut_to(&mut self) -> &mut T { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tid` [INFO] [stdout] --> src/rule_context.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 14 | use better_any::{Tid, TidAble}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type of the `self` parameter does not need to be arbitrary [INFO] [stdout] --> src/lib.rs:222:22 [INFO] [stdout] | [INFO] [stdout] 222 | fn coerce_ref_to(self: &Self) -> &T; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_arbitrary_self_type [INFO] [stdout] = note: `#[warn(clippy::needless_arbitrary_self_type)]` on by default [INFO] [stdout] help: remove the type [INFO] [stdout] | [INFO] [stdout] 222 - fn coerce_ref_to(self: &Self) -> &T; [INFO] [stdout] 222 + fn coerce_ref_to(&self) -> &T; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type of the `self` parameter does not need to be arbitrary [INFO] [stdout] --> src/lib.rs:223:22 [INFO] [stdout] | [INFO] [stdout] 223 | fn coerce_mut_to(self: &mut Self) -> &mut T; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_arbitrary_self_type [INFO] [stdout] help: remove the type [INFO] [stdout] | [INFO] [stdout] 223 - fn coerce_mut_to(self: &mut Self) -> &mut T; [INFO] [stdout] 223 + fn coerce_mut_to(&mut self) -> &mut T; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type of the `self` parameter does not need to be arbitrary [INFO] [stdout] --> src/lib.rs:237:22 [INFO] [stdout] | [INFO] [stdout] 237 | fn coerce_ref_to(self: &Self) -> &T { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_arbitrary_self_type [INFO] [stdout] help: remove the type [INFO] [stdout] | [INFO] [stdout] 237 - fn coerce_ref_to(self: &Self) -> &T { [INFO] [stdout] 237 + fn coerce_ref_to(&self) -> &T { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type of the `self` parameter does not need to be arbitrary [INFO] [stdout] --> src/lib.rs:241:22 [INFO] [stdout] | [INFO] [stdout] 241 | fn coerce_mut_to(self: &mut Self) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_arbitrary_self_type [INFO] [stdout] help: remove the type [INFO] [stdout] | [INFO] [stdout] 241 - fn coerce_mut_to(self: &mut Self) -> &mut T { [INFO] [stdout] 241 + fn coerce_mut_to(&mut self) -> &mut T { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/error_strategy.rs:584:13 [INFO] [stdout] | [INFO] [stdout] 580 | / loop { [INFO] [stdout] 581 | | ctx.set_exception(e.clone()); [INFO] [stdout] 582 | | ctx = ctx.get_parent()? [INFO] [stdout] 583 | | } [INFO] [stdout] | |_____________- any code following this expression is unreachable [INFO] [stdout] 584 | Some(()) [INFO] [stdout] | ^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/error_strategy.rs:584:13 [INFO] [stdout] | [INFO] [stdout] 580 | / loop { [INFO] [stdout] 581 | | ctx.set_exception(e.clone()); [INFO] [stdout] 582 | | ctx = ctx.get_parent()? [INFO] [stdout] 583 | | } [INFO] [stdout] | |_____________- any code following this expression is unreachable [INFO] [stdout] 584 | Some(()) [INFO] [stdout] | ^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rule_names` [INFO] [stdout] --> src/tree.rs:144:29 [INFO] [stdout] | [INFO] [stdout] 144 | fn get_node_text(&self, rule_names: &[&str]) -> String { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rule_names` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aggregate` [INFO] [stdout] --> src/tree.rs:294:33 [INFO] [stdout] | [INFO] [stdout] 294 | fn aggregate_results(&self, aggregate: Self::Return, next: Self::Return) -> Self::Return { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_aggregate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> src/tree.rs:300:9 [INFO] [stdout] | [INFO] [stdout] 300 | node: &>::Type, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current` [INFO] [stdout] --> src/tree.rs:301:9 [INFO] [stdout] | [INFO] [stdout] 301 | current: &Self::Return, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rule_names` [INFO] [stdout] --> src/tree.rs:144:29 [INFO] [stdout] | [INFO] [stdout] 144 | fn get_node_text(&self, rule_names: &[&str]) -> String { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rule_names` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aggregate` [INFO] [stdout] --> src/tree.rs:294:33 [INFO] [stdout] | [INFO] [stdout] 294 | fn aggregate_results(&self, aggregate: Self::Return, next: Self::Return) -> Self::Return { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_aggregate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> src/tree.rs:300:9 [INFO] [stdout] | [INFO] [stdout] 300 | node: &>::Type, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current` [INFO] [stdout] --> src/tree.rs:301:9 [INFO] [stdout] | [INFO] [stdout] 301 | current: &Self::Return, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `read_only` and `generate_rule_bypass_transitions` are never read [INFO] [stdout] --> src/atn_deserialization_options.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct ATNDeserializationOptions { [INFO] [stdout] | ------------------------- fields in this struct [INFO] [stdout] 3 | read_only: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 4 | verify_atn: bool, [INFO] [stdout] 5 | generate_rule_bypass_transitions: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ATNDeserializationOptions` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `drop` is never used [INFO] [stdout] --> src/dfa.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub(crate) trait ScopeExt: Sized { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 33 | fn drop(self) {} [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `predicate_index` is never read [INFO] [stdout] --> src/errors.rs:225:5 [INFO] [stdout] | [INFO] [stdout] 222 | pub struct FailedPredicateError { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 225 | predicate_index: isize, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FailedPredicateError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Sealed` is never used [INFO] [stdout] --> src/utils.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub trait Sealed {} [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/int_stream.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | /// before calling this method is less than the value of `index` [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] = note: `#[warn(clippy::doc_lazy_continuation)]` on by default [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 17 | /// before calling this method is less than the value of `index` [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/int_stream.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | /// after calling this method. [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 18 | /// after calling this method. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/int_stream.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | /// calling this method becomes the value of {@code LA(-1)} after calling [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 20 | /// calling this method becomes the value of {@code LA(-1)} after calling [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/int_stream.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | /// this method. [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 21 | /// this method. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: all variants have the same prefix: `Lexer` [INFO] [stdout] --> src/lexer_action.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | / pub(crate) enum LexerAction { [INFO] [stdout] 16 | | LexerChannelAction(isize), [INFO] [stdout] 17 | | LexerCustomAction { [INFO] [stdout] 18 | | rule_index: isize, [INFO] [stdout] ... | [INFO] [stdout] 30 | | }, [INFO] [stdout] 31 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: remove the prefixes and use full paths to the variants instead of glob imports [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#enum_variant_names [INFO] [stdout] = note: `#[warn(clippy::enum_variant_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/lexer_action.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | / match self { [INFO] [stdout] 40 | | LexerAction::LexerCustomAction { .. } [INFO] [stdout] 41 | | | LexerAction::LexerIndexedCustomAction { .. } => true, [INFO] [stdout] 42 | | _ => false, [INFO] [stdout] 43 | | } [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] 39 ~ matches!(self, LexerAction::LexerCustomAction { .. } [INFO] [stdout] 40 + | LexerAction::LexerIndexedCustomAction { .. }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you don't need to add `&` to all patterns [INFO] [stdout] --> src/lexer_action.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | / match self { [INFO] [stdout] 47 | | &LexerAction::LexerChannelAction(channel) => lexer.set_channel(channel), [INFO] [stdout] 48 | | &LexerAction::LexerCustomAction { [INFO] [stdout] 49 | | rule_index, [INFO] [stdout] ... | [INFO] [stdout] 62 | | &LexerAction::LexerIndexedCustomAction { ref action, .. } => action.execute(lexer), [INFO] [stdout] 63 | | } [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] 46 ~ match *self { [INFO] [stdout] 47 ~ LexerAction::LexerChannelAction(channel) => lexer.set_channel(channel), [INFO] [stdout] 48 ~ LexerAction::LexerCustomAction { [INFO] [stdout] 49 + rule_index, [INFO] [stdout] 50 + action_index, [INFO] [stdout] 51 ~ } => { [INFO] [stdout] 52 | lexer.action(None, rule_index, action_index); [INFO] [stdout] 53 | } [INFO] [stdout] 54 ~ LexerAction::LexerModeAction(mode) => lexer.set_mode(mode as usize), [INFO] [stdout] 55 ~ LexerAction::LexerMoreAction => lexer.more(), [INFO] [stdout] 56 ~ LexerAction::LexerPopModeAction => { [INFO] [stdout] 57 | lexer.pop_mode(); [INFO] [stdout] 58 | } [INFO] [stdout] 59 ~ LexerAction::LexerPushModeAction(mode) => lexer.push_mode(mode as usize), [INFO] [stdout] 60 ~ LexerAction::LexerSkipAction => lexer.skip(), [INFO] [stdout] 61 ~ LexerAction::LexerTypeAction(ty) => lexer.set_type(ty), [INFO] [stdout] 62 ~ LexerAction::LexerIndexedCustomAction { ref action, .. } => action.execute(lexer), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a struct pattern where every field's pattern takes a reference [INFO] [stdout] --> src/lexer_action.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | &LexerAction::LexerIndexedCustomAction { ref action, .. } => action.execute(lexer), [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] 62 - &LexerAction::LexerIndexedCustomAction { ref action, .. } => action.execute(lexer), [INFO] [stdout] 62 + LexerAction::LexerIndexedCustomAction { action, .. } => action.execute(lexer), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/ll1_analyzer.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 52 | / fn look_work( [INFO] [stdout] 53 | | &self, [INFO] [stdout] 54 | | // atn:&ATN, [INFO] [stdout] 55 | | s: &dyn ATNState, [INFO] [stdout] ... | [INFO] [stdout] 62 | | add_eof: bool, [INFO] [stdout] 63 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: needlessly taken reference of both operands [INFO] [stdout] --> src/ll1_analyzer.rs:93:30 [INFO] [stdout] | [INFO] [stdout] 93 | Some(ctx) if &ctx != &*EMPTY_PREDICTION_CONTEXT => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stdout] = note: `#[warn(clippy::op_ref)]` on by default [INFO] [stdout] help: use the values directly [INFO] [stdout] | [INFO] [stdout] 93 - Some(ctx) if &ctx != &*EMPTY_PREDICTION_CONTEXT => { [INFO] [stdout] 93 + Some(ctx) if ctx != *EMPTY_PREDICTION_CONTEXT => { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/token_factory.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | / fn create( [INFO] [stdout] 60 | | &'a self, [INFO] [stdout] 61 | | source: Option<&mut T>, [INFO] [stdout] 62 | | ttype: isize, [INFO] [stdout] ... | [INFO] [stdout] 68 | | column: isize, [INFO] [stdout] 69 | | ) -> Self::Tok [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/token_factory.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | &**COMMON_TOKEN_FACTORY_DEFAULT [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&COMMON_TOKEN_FACTORY_DEFAULT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::borrow::Cow<'_, str>` [INFO] [stdout] --> src/token_factory.rs:121:21 [INFO] [stdout] | [INFO] [stdout] 121 | x.get_text(start, stop).into() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `x.get_text(start, stop)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/atn_state.rs:181:17 [INFO] [stdout] | [INFO] [stdout] 181 | / { [INFO] [stdout] 182 | | already_present = true; [INFO] [stdout] 183 | | break; [INFO] [stdout] 184 | | } else if existing.is_epsilon() && trans.is_epsilon() { [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/atn_state.rs:184:71 [INFO] [stdout] | [INFO] [stdout] 184 | } else if existing.is_epsilon() && trans.is_epsilon() { [INFO] [stdout] | _______________________________________________________________________^ [INFO] [stdout] 185 | | already_present = true; [INFO] [stdout] 186 | | break; [INFO] [stdout] 187 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `InputData` has a `len` method but no (possibly inherited) `is_empty` method [INFO] [stdout] --> src/char_stream.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | / pub trait InputData: [INFO] [stdout] 21 | | Index, Output = Self> [INFO] [stdout] 22 | | + Index, Output = Self> [INFO] [stdout] 23 | | + ToOwned [INFO] [stdout] ... | [INFO] [stdout] 42 | | fn to_display(&self) -> String; [INFO] [stdout] 43 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stdout] = note: `#[warn(clippy::len_without_is_empty)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | return self.a < other.a && self.b < other.a; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 40 - return self.a < other.a && self.b < other.a; [INFO] [stdout] 40 + self.a < other.a && self.b < other.a [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | return self.a <= other.a && self.b >= other.a; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 45 - return self.a <= other.a && self.b >= other.a; [INFO] [stdout] 45 + self.a <= other.a && self.b >= other.a [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | return self.a > other.a; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 50 - return self.a > other.a; [INFO] [stdout] 50 + self.a > other.a [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | return self.a > other.b; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 55 - return self.a > other.b; [INFO] [stdout] 55 + self.a > other.b [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | return self.a > other.a && self.a <= other.b; // self.b>=other.b implied [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 60 - return self.a > other.a && self.a <= other.b; // self.b>=other.b implied [INFO] [stdout] 60 + self.a > other.a && self.a <= other.b// self.b>=other.b implied [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | return self.starts_before_disjoint(other) || self.starts_after_disjoint(other); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 - return self.starts_before_disjoint(other) || self.starts_after_disjoint(other); [INFO] [stdout] 65 + self.starts_before_disjoint(other) || self.starts_after_disjoint(other) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | return self.a == other.b + 1 || self.b == other.a - 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 70 - return self.a == other.b + 1 || self.b == other.a - 1; [INFO] [stdout] 70 + self.a == other.b + 1 || self.b == other.a - 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `IntervalSet` [INFO] [stdout] --> src/interval_set.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / pub fn new() -> IntervalSet { [INFO] [stdout] 102 | | IntervalSet { [INFO] [stdout] 103 | | intervals: Vec::new(), [INFO] [stdout] 104 | | read_only: false, [INFO] [stdout] 105 | | } [INFO] [stdout] 106 | | } [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] 100 + impl Default for IntervalSet { [INFO] [stdout] 101 + fn default() -> Self { [INFO] [stdout] 102 + Self::new() [INFO] [stdout] 103 + } [INFO] [stdout] 104 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:228:9 [INFO] [stdout] | [INFO] [stdout] 228 | return vocablulary_is; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 228 - return vocablulary_is; [INFO] [stdout] 228 + vocablulary_is [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:337:9 [INFO] [stdout] | [INFO] [stdout] 337 | return buf; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 337 - return buf; [INFO] [stdout] 337 + buf [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_rule_context.rs:175:9 [INFO] [stdout] | [INFO] [stdout] 175 | return result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 175 - return result; [INFO] [stdout] 175 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/parser_rule_context.rs:158:17 [INFO] [stdout] | [INFO] [stdout] 158 | result.extend(rule_name.chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `result.push_str(&rule_name)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] = note: `#[warn(clippy::string_extend_chars)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/parser_rule_context.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | result.extend(p.get_invoking_state().to_string().chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `result.push_str(&p.get_invoking_state().to_string())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should use the `ends_with` method [INFO] [stdout] --> src/parser_rule_context.rs:170:12 [INFO] [stdout] | [INFO] [stdout] 170 | if result.chars().last() == Some(' ') { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: like this: `result.ends_with(' ')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#chars_last_cmp [INFO] [stdout] = note: `#[warn(clippy::chars_last_cmp)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/prediction_context.rs:92:71 [INFO] [stdout] | [INFO] [stdout] 92 | self.return_state == PREDICTION_CONTEXT_EMPTY_RETURN_STATE && self.parent_ctx == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `self.parent_ctx.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] = note: `#[warn(clippy::partialeq_to_none)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/prediction_context.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 355 | return r; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 355 - return r; [INFO] [stdout] 355 + r [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/prediction_context.rs:517:9 [INFO] [stdout] | [INFO] [stdout] 517 | return m; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 517 - return m; [INFO] [stdout] 517 + m [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `read_only` and `generate_rule_bypass_transitions` are never read [INFO] [stdout] --> src/atn_deserialization_options.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct ATNDeserializationOptions { [INFO] [stdout] | ------------------------- fields in this struct [INFO] [stdout] 3 | read_only: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 4 | verify_atn: bool, [INFO] [stdout] 5 | generate_rule_bypass_transitions: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ATNDeserializationOptions` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `drop` is never used [INFO] [stdout] --> src/dfa.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub(crate) trait ScopeExt: Sized { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 33 | fn drop(self) {} [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `predicate_index` is never read [INFO] [stdout] --> src/errors.rs:225:5 [INFO] [stdout] | [INFO] [stdout] 222 | pub struct FailedPredicateError { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 225 | predicate_index: isize, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FailedPredicateError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Sealed` is never used [INFO] [stdout] --> src/utils.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub trait Sealed {} [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/prediction_context.rs:651:9 [INFO] [stdout] | [INFO] [stdout] 651 | return updated; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 651 - return updated; [INFO] [stdout] 651 + updated [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/prediction_context.rs:631:26 [INFO] [stdout] | [INFO] [stdout] 631 | let updated = if parents.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `parents.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: this item has comments with 4 forward slashes (`////`). These look like doc comments, but they aren't [INFO] [stdout] --> src/semantic_context.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | / //// fn evaluate(&self, parser: &Recognizer, outerContext: &RuleContext) -> bool; [INFO] [stdout] 10 | | //// fn eval_precedence(&self, parser: &Recognizer, outerContext: &RuleContext, ) -> Box; [INFO] [stdout] ... | [INFO] [stdout] 21 | | #[derive(Clone, Eq, PartialEq, Hash, Debug)] [INFO] [stdout] 22 | | pub enum SemanticContext { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#four_forward_slashes [INFO] [stdout] = note: `#[warn(clippy::four_forward_slashes)]` on by default [INFO] [stdout] help: turn these into doc comments by removing one `/` [INFO] [stdout] | [INFO] [stdout] 9 + /// fn evaluate(&self, parser: &Recognizer, outerContext: &RuleContext) -> bool; [INFO] [stdout] 10 ~ /// fn eval_precedence(&self, parser: &Recognizer, outerContext: &RuleContext, ) -> Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/int_stream.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | /// before calling this method is less than the value of `index` [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] = note: `#[warn(clippy::doc_lazy_continuation)]` on by default [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 17 | /// before calling this method is less than the value of `index` [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/int_stream.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | /// after calling this method. [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 18 | /// after calling this method. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/int_stream.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | /// calling this method becomes the value of {@code LA(-1)} after calling [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 20 | /// calling this method becomes the value of {@code LA(-1)} after calling [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/int_stream.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | /// this method. [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 21 | /// this method. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: all variants have the same prefix: `Lexer` [INFO] [stdout] --> src/lexer_action.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | / pub(crate) enum LexerAction { [INFO] [stdout] 16 | | LexerChannelAction(isize), [INFO] [stdout] 17 | | LexerCustomAction { [INFO] [stdout] 18 | | rule_index: isize, [INFO] [stdout] ... | [INFO] [stdout] 30 | | }, [INFO] [stdout] 31 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: remove the prefixes and use full paths to the variants instead of glob imports [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#enum_variant_names [INFO] [stdout] = note: `#[warn(clippy::enum_variant_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> src/lexer_action.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | / match self { [INFO] [stdout] 40 | | LexerAction::LexerCustomAction { .. } [INFO] [stdout] 41 | | | LexerAction::LexerIndexedCustomAction { .. } => true, [INFO] [stdout] 42 | | _ => false, [INFO] [stdout] 43 | | } [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] 39 ~ matches!(self, LexerAction::LexerCustomAction { .. } [INFO] [stdout] 40 + | LexerAction::LexerIndexedCustomAction { .. }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/token_stream.rs:136:16 [INFO] [stdout] | [INFO] [stdout] 136 | if self.tokens.len() > 0 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!self.tokens.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: you don't need to add `&` to all patterns [INFO] [stdout] --> src/lexer_action.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | / match self { [INFO] [stdout] 47 | | &LexerAction::LexerChannelAction(channel) => lexer.set_channel(channel), [INFO] [stdout] 48 | | &LexerAction::LexerCustomAction { [INFO] [stdout] 49 | | rule_index, [INFO] [stdout] ... | [INFO] [stdout] 62 | | &LexerAction::LexerIndexedCustomAction { ref action, .. } => action.execute(lexer), [INFO] [stdout] 63 | | } [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] 46 ~ match *self { [INFO] [stdout] 47 ~ LexerAction::LexerChannelAction(channel) => lexer.set_channel(channel), [INFO] [stdout] 48 ~ LexerAction::LexerCustomAction { [INFO] [stdout] 49 + rule_index, [INFO] [stdout] 50 + action_index, [INFO] [stdout] 51 ~ } => { [INFO] [stdout] 52 | lexer.action(None, rule_index, action_index); [INFO] [stdout] 53 | } [INFO] [stdout] 54 ~ LexerAction::LexerModeAction(mode) => lexer.set_mode(mode as usize), [INFO] [stdout] 55 ~ LexerAction::LexerMoreAction => lexer.more(), [INFO] [stdout] 56 ~ LexerAction::LexerPopModeAction => { [INFO] [stdout] 57 | lexer.pop_mode(); [INFO] [stdout] 58 | } [INFO] [stdout] 59 ~ LexerAction::LexerPushModeAction(mode) => lexer.push_mode(mode as usize), [INFO] [stdout] 60 ~ LexerAction::LexerSkipAction => lexer.skip(), [INFO] [stdout] 61 ~ LexerAction::LexerTypeAction(ty) => lexer.set_type(ty), [INFO] [stdout] 62 ~ LexerAction::LexerIndexedCustomAction { ref action, .. } => action.execute(lexer), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: dereferencing a struct pattern where every field's pattern takes a reference [INFO] [stdout] --> src/lexer_action.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | &LexerAction::LexerIndexedCustomAction { ref action, .. } => action.execute(lexer), [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] 62 - &LexerAction::LexerIndexedCustomAction { ref action, .. } => action.execute(lexer), [INFO] [stdout] 62 + LexerAction::LexerIndexedCustomAction { action, .. } => action.execute(lexer), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/token_stream.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | return buf; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 200 - return buf; [INFO] [stdout] 200 + buf [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/ll1_analyzer.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 52 | / fn look_work( [INFO] [stdout] 53 | | &self, [INFO] [stdout] 54 | | // atn:&ATN, [INFO] [stdout] 55 | | s: &dyn ATNState, [INFO] [stdout] ... | [INFO] [stdout] 62 | | add_eof: bool, [INFO] [stdout] 63 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/token_stream.rs:197:13 [INFO] [stdout] | [INFO] [stdout] 197 | buf.extend(t.get_text().to_display().chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `buf.push_str(&t.get_text().to_display())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: needlessly taken reference of both operands [INFO] [stdout] --> src/ll1_analyzer.rs:93:30 [INFO] [stdout] | [INFO] [stdout] 93 | Some(ctx) if &ctx != &*EMPTY_PREDICTION_CONTEXT => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stdout] = note: `#[warn(clippy::op_ref)]` on by default [INFO] [stdout] help: use the values directly [INFO] [stdout] | [INFO] [stdout] 93 - Some(ctx) if &ctx != &*EMPTY_PREDICTION_CONTEXT => { [INFO] [stdout] 93 + Some(ctx) if ctx != *EMPTY_PREDICTION_CONTEXT => { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/token_stream.rs:241:9 [INFO] [stdout] | [INFO] [stdout] 241 | / if self.markers_count == 0 { [INFO] [stdout] 242 | | if self.p > 0 { [INFO] [stdout] 243 | | self.tokens.drain(0..self.p as usize); [INFO] [stdout] ... | [INFO] [stdout] 263 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 241 ~ if self.markers_count == 0 [INFO] [stdout] 242 ~ && self.p > 0 { [INFO] [stdout] 243 | self.tokens.drain(0..self.p as usize); [INFO] [stdout] ... [INFO] [stdout] 261 | self.p = 0; [INFO] [stdout] 262 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/dfa.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | usize::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] 72 - usize::max_value(), [INFO] [stdout] 72 + usize::MAX, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/dfa.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | / return format!( [INFO] [stdout] 149 | | "{}", [INFO] [stdout] 150 | | DFASerializer::new(self, &|x| vocabulary [INFO] [stdout] 151 | | .get_display_name(x as isize - 1) [INFO] [stdout] 152 | | .into_owned(),) [INFO] [stdout] 153 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 148 ~ format!( [INFO] [stdout] 149 + "{}", [INFO] [stdout] 150 + DFASerializer::new(self, &|x| vocabulary [INFO] [stdout] 151 + .get_display_name(x as isize - 1) [INFO] [stdout] 152 + .into_owned(),) [INFO] [stdout] 153 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/token_factory.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | / fn create( [INFO] [stdout] 60 | | &'a self, [INFO] [stdout] 61 | | source: Option<&mut T>, [INFO] [stdout] 62 | | ttype: isize, [INFO] [stdout] ... | [INFO] [stdout] 68 | | column: isize, [INFO] [stdout] 69 | | ) -> Self::Tok [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/token_factory.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | &**COMMON_TOKEN_FACTORY_DEFAULT [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&COMMON_TOKEN_FACTORY_DEFAULT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::borrow::Cow<'_, str>` [INFO] [stdout] --> src/token_factory.rs:121:21 [INFO] [stdout] | [INFO] [stdout] 121 | x.get_text(start, stop).into() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `x.get_text(start, stop)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/tree.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 141 | usize::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] 141 - usize::max_value() [INFO] [stdout] 141 + usize::MAX [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/tree.rs:265:25 [INFO] [stdout] | [INFO] [stdout] 265 | self.visit_node(&node); [INFO] [stdout] | ^^^^^ help: change this to: `node` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tree.rs:291:9 [INFO] [stdout] | [INFO] [stdout] 291 | return result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 291 - return result; [INFO] [stdout] 291 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/atn_state.rs:181:17 [INFO] [stdout] | [INFO] [stdout] 181 | / { [INFO] [stdout] 182 | | already_present = true; [INFO] [stdout] 183 | | break; [INFO] [stdout] 184 | | } else if existing.is_epsilon() && trans.is_epsilon() { [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/atn_state.rs:184:71 [INFO] [stdout] | [INFO] [stdout] 184 | } else if existing.is_epsilon() && trans.is_epsilon() { [INFO] [stdout] | _______________________________________________________________________^ [INFO] [stdout] 185 | | already_present = true; [INFO] [stdout] 186 | | break; [INFO] [stdout] 187 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `InputData` has a `len` method but no (possibly inherited) `is_empty` method [INFO] [stdout] --> src/char_stream.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | / pub trait InputData: [INFO] [stdout] 21 | | Index, Output = Self> [INFO] [stdout] 22 | | + Index, Output = Self> [INFO] [stdout] 23 | | + ToOwned [INFO] [stdout] ... | [INFO] [stdout] 42 | | fn to_display(&self) -> String; [INFO] [stdout] 43 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stdout] = note: `#[warn(clippy::len_without_is_empty)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/atn.rs:152:26 [INFO] [stdout] | [INFO] [stdout] 152 | expected.add_set(&following); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `following` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/atn_config_set.rs:25:25 [INFO] [stdout] | [INFO] [stdout] 25 | pub(crate) configs: 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: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | return self.a < other.a && self.b < other.a; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 40 - return self.a < other.a && self.b < other.a; [INFO] [stdout] 40 + self.a < other.a && self.b < other.a [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | return self.a <= other.a && self.b >= other.a; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 45 - return self.a <= other.a && self.b >= other.a; [INFO] [stdout] 45 + self.a <= other.a && self.b >= other.a [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | return self.a > other.a; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 50 - return self.a > other.a; [INFO] [stdout] 50 + self.a > other.a [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | return self.a > other.b; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 55 - return self.a > other.b; [INFO] [stdout] 55 + self.a > other.b [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | return self.a > other.a && self.a <= other.b; // self.b>=other.b implied [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 60 - return self.a > other.a && self.a <= other.b; // self.b>=other.b implied [INFO] [stdout] 60 + self.a > other.a && self.a <= other.b// self.b>=other.b implied [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | return self.starts_before_disjoint(other) || self.starts_after_disjoint(other); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 - return self.starts_before_disjoint(other) || self.starts_after_disjoint(other); [INFO] [stdout] 65 + self.starts_before_disjoint(other) || self.starts_after_disjoint(other) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | return self.a == other.b + 1 || self.b == other.a - 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 70 - return self.a == other.b + 1 || self.b == other.a - 1; [INFO] [stdout] 70 + self.a == other.b + 1 || self.b == other.a - 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `IntervalSet` [INFO] [stdout] --> src/interval_set.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / pub fn new() -> IntervalSet { [INFO] [stdout] 102 | | IntervalSet { [INFO] [stdout] 103 | | intervals: Vec::new(), [INFO] [stdout] 104 | | read_only: false, [INFO] [stdout] 105 | | } [INFO] [stdout] 106 | | } [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] 100 + impl Default for IntervalSet { [INFO] [stdout] 101 + fn default() -> Self { [INFO] [stdout] 102 + Self::new() [INFO] [stdout] 103 + } [INFO] [stdout] 104 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `unwrap_or` to construct default value [INFO] [stdout] --> src/atn_deserializer.rs:51:46 [INFO] [stdout] | [INFO] [stdout] 51 | deserialization_options: options.unwrap_or(ATNDeserializationOptions::default()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:228:9 [INFO] [stdout] | [INFO] [stdout] 228 | return vocablulary_is; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 228 - return vocablulary_is; [INFO] [stdout] 228 + vocablulary_is [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/interval_set.rs:337:9 [INFO] [stdout] | [INFO] [stdout] 337 | return buf; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 337 - return buf; [INFO] [stdout] 337 + buf [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/atn_deserializer.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 128 | / let atn = ATN::new_atn( [INFO] [stdout] 129 | | match data.next() { [INFO] [stdout] 130 | | Some(0) => ATNType::LEXER, [INFO] [stdout] 131 | | Some(1) => ATNType::PARSER, [INFO] [stdout] ... | [INFO] [stdout] 134 | | data.next().unwrap(), [INFO] [stdout] 135 | | ); [INFO] [stdout] | |__________- unnecessary `let` binding [INFO] [stdout] 136 | [INFO] [stdout] 137 | atn [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] 128 ~ [INFO] [stdout] 129 | [INFO] [stdout] 130 ~ ATN::new_atn( [INFO] [stdout] 131 + match data.next() { [INFO] [stdout] 132 + Some(0) => ATNType::LEXER, [INFO] [stdout] 133 + Some(1) => ATNType::PARSER, [INFO] [stdout] 134 + _ => panic!("invalid ATN type"), [INFO] [stdout] 135 + }, [INFO] [stdout] 136 + data.next().unwrap(), [INFO] [stdout] 137 + ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_rule_context.rs:175:9 [INFO] [stdout] | [INFO] [stdout] 175 | return result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 175 - return result; [INFO] [stdout] 175 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/parser_rule_context.rs:158:17 [INFO] [stdout] | [INFO] [stdout] 158 | result.extend(rule_name.chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `result.push_str(&rule_name)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] = note: `#[warn(clippy::string_extend_chars)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/parser_rule_context.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | result.extend(p.get_invoking_state().to_string().chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `result.push_str(&p.get_invoking_state().to_string())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/atn_deserializer.rs:452:5 [INFO] [stdout] | [INFO] [stdout] 452 | / fn edge_factory( [INFO] [stdout] 453 | | &self, [INFO] [stdout] 454 | | _atn: &ATN, [INFO] [stdout] 455 | | type_index: isize, [INFO] [stdout] ... | [INFO] [stdout] 461 | | sets: &Vec, [INFO] [stdout] 462 | | ) -> Box { [INFO] [stdout] | |____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/atn_deserializer.rs:461:15 [INFO] [stdout] | [INFO] [stdout] 461 | sets: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 461 - sets: &Vec, [INFO] [stdout] 461 + sets: &[IntervalSet], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should use the `ends_with` method [INFO] [stdout] --> src/parser_rule_context.rs:170:12 [INFO] [stdout] | [INFO] [stdout] 170 | if result.chars().last() == Some(' ') { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: like this: `result.ends_with(' ')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#chars_last_cmp [INFO] [stdout] = note: `#[warn(clippy::chars_last_cmp)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/common_token_stream.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | return self.base.tokens.get(i as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 125 - return self.base.tokens.get(i as usize); [INFO] [stdout] 125 + self.base.tokens.get(i as usize) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/common_token_stream.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | return i; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 179 - return i; [INFO] [stdout] 179 + i [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/common_token_stream.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | return self.base.tokens.get(i as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 224 - return self.base.tokens.get(i as usize); [INFO] [stdout] 224 + self.base.tokens.get(i as usize) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/prediction_context/test.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | &*EMPTY_PREDICTION_CONTEXT, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&EMPTY_PREDICTION_CONTEXT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/prediction_context/test.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | &*EMPTY_PREDICTION_CONTEXT, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&EMPTY_PREDICTION_CONTEXT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/prediction_context/test.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | &*EMPTY_PREDICTION_CONTEXT, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&EMPTY_PREDICTION_CONTEXT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/prediction_context/test.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | &*EMPTY_PREDICTION_CONTEXT, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&EMPTY_PREDICTION_CONTEXT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/error_listener.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | / fn report_ambiguity( [INFO] [stdout] 41 | | &self, [INFO] [stdout] 42 | | _recognizer: &T, [INFO] [stdout] 43 | | _dfa: &DFA, [INFO] [stdout] ... | [INFO] [stdout] 48 | | _configs: &ATNConfigSet, [INFO] [stdout] 49 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/prediction_context/test.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | &*EMPTY_PREDICTION_CONTEXT, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&EMPTY_PREDICTION_CONTEXT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/prediction_context/test.rs:60:44 [INFO] [stdout] | [INFO] [stdout] 60 | let r = PredictionContext::merge(&x(), &*EMPTY_PREDICTION_CONTEXT, full_ctx(), &mut None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&EMPTY_PREDICTION_CONTEXT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/prediction_context/test.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 74 | &*EMPTY_PREDICTION_CONTEXT, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&EMPTY_PREDICTION_CONTEXT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 189 | /// grammar can match the input. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 189 | /// grammar can match the input. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 191 | /// prediction resolved an SLL conflict to a unique alternative which equaled the [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 191 | /// prediction resolved an SLL conflict to a unique alternative which equaled the [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/prediction_context/test.rs:86:38 [INFO] [stdout] | [INFO] [stdout] 86 | let r = PredictionContext::merge(&*EMPTY_PREDICTION_CONTEXT, &x(), full_ctx(), &mut None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&EMPTY_PREDICTION_CONTEXT` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:192:5 [INFO] [stdout] | [INFO] [stdout] 192 | /// minimum alternative of the SLL conflict. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 192 | /// minimum alternative of the SLL conflict. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 194 | /// full-context prediction resolved an SLL conflict to a unique alternative, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 194 | /// full-context prediction resolved an SLL conflict to a unique alternative, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:195:5 [INFO] [stdout] | [INFO] [stdout] 195 | /// *and* the minimum alternative of the SLL conflict was found to not be [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 195 | /// *and* the minimum alternative of the SLL conflict was found to not be [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:196:5 [INFO] [stdout] | [INFO] [stdout] 196 | /// a truly viable alternative. Two-stage parsing cannot be used for inputs where [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 196 | /// a truly viable alternative. Two-stage parsing cannot be used for inputs where [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | /// this situation occurs. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 197 | /// this situation occurs. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | /// the available alternatives could possibly match) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 29 | /// the available alternatives could possibly match) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/error_strategy.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | ) -> Result<>::Tok, ANTLRError>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] = note: `#[warn(clippy::result_large_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/error_strategy.rs:64:66 [INFO] [stdout] | [INFO] [stdout] 64 | fn recover(&mut self, recognizer: &mut T, e: &ANTLRError) -> Result<(), ANTLRError>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/error_strategy.rs:73:47 [INFO] [stdout] | [INFO] [stdout] 73 | fn sync(&mut self, recognizer: &mut T) -> Result<(), ANTLRError>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/error_strategy.rs:385:9 [INFO] [stdout] | [INFO] [stdout] 385 | return recover_set; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 385 - return recover_set; [INFO] [stdout] 385 + recover_set [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/error_strategy.rs:524:76 [INFO] [stdout] | [INFO] [stdout] 524 | recognizer.notify_error_listeners(msg, offending_token_index, Some(&e)) [INFO] [stdout] | ^^ help: change this to: `e` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:542:5 [INFO] [stdout] | [INFO] [stdout] 542 | /// stage of two-stage parsing to immediately terminate if an error is [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 542 | /// stage of two-stage parsing to immediately terminate if an error is [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:543:5 [INFO] [stdout] | [INFO] [stdout] 543 | /// encountered, and immediately fall back to the second stage. In addition to [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 543 | /// encountered, and immediately fall back to the second stage. In addition to [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:544:5 [INFO] [stdout] | [INFO] [stdout] 544 | /// avoiding wasted work by attempting to recover from errors here, the empty [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 544 | /// avoiding wasted work by attempting to recover from errors here, the empty [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:545:5 [INFO] [stdout] | [INFO] [stdout] 545 | /// implementation of `sync` improves the performance of [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 545 | /// implementation of `sync` improves the performance of [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:546:5 [INFO] [stdout] | [INFO] [stdout] 546 | /// the first stage. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 546 | /// the first stage. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:548:5 [INFO] [stdout] | [INFO] [stdout] 548 | /// reported or logged, and the parse result is simply ignored if errors occur, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 548 | /// reported or logged, and the parse result is simply ignored if errors occur, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:549:5 [INFO] [stdout] | [INFO] [stdout] 549 | /// the `BailErrorStrategy` avoids wasting work on recovering from errors [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 549 | /// the `BailErrorStrategy` avoids wasting work on recovering from errors [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:550:5 [INFO] [stdout] | [INFO] [stdout] 550 | /// when the result will be ignored either way. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 550 | /// when the result will be ignored either way. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/error_strategy.rs:586:9 [INFO] [stdout] | [INFO] [stdout] 586 | return ANTLRError::FallThrough(Rc::new(ParseCancelledError(e.clone()))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 586 - return ANTLRError::FallThrough(Rc::new(ParseCancelledError(e.clone()))); [INFO] [stdout] 586 + ANTLRError::FallThrough(Rc::new(ParseCancelledError(e.clone()))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/error_strategy.rs:625:44 [INFO] [stdout] | [INFO] [stdout] 625 | Err(self.process_error(recognizer, &e)) [INFO] [stdout] | ^^ help: change this to: `e` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this item has comments with 4 forward slashes (`////`). These look like doc comments, but they aren't [INFO] [stdout] --> src/errors.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / //// atn.get_expected_tokens(se) [INFO] [stdout] ... | [INFO] [stdout] 116 | | #[allow(missing_docs)] [INFO] [stdout] 117 | | pub struct BaseRecognitionError { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#four_forward_slashes [INFO] [stdout] help: make this a doc comment by removing one `/` [INFO] [stdout] | [INFO] [stdout] 109 - //// atn.get_expected_tokens(se) [INFO] [stdout] 110 - // unimplemented!() [INFO] [stdout] 109 + /// atn.get_expected_tokens(se) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> src/errors.rs:231:5 [INFO] [stdout] | [INFO] [stdout] 231 | / pub fn new<'a, T: Parser<'a>>( [INFO] [stdout] 232 | | recog: &mut T, [INFO] [stdout] 233 | | predicate: Option, [INFO] [stdout] 234 | | msg: Option, [INFO] [stdout] ... | [INFO] [stdout] 262 | | }) [INFO] [stdout] 263 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] = note: `#[warn(clippy::new_ret_no_self)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/input_stream.rs:63:6 [INFO] [stdout] | [INFO] [stdout] 63 | impl<'a, T> CharStream for InputStream<&'a [T]> [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] 63 - impl<'a, T> CharStream for InputStream<&'a [T]> [INFO] [stdout] 63 + impl CharStream for InputStream<&[T]> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/input_stream.rs:72:6 [INFO] [stdout] | [INFO] [stdout] 72 | impl<'a, 'b, T> CharStream> for InputStream<&'a [T]> [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] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 72 - impl<'a, 'b, T> CharStream> for InputStream<&'a [T]> [INFO] [stdout] 72 + impl<'b, T> CharStream> for InputStream<&[T]> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::boxed::Box` [INFO] [stdout] --> src/input_stream.rs:109:23 [INFO] [stdout] | [INFO] [stdout] 109 | data_raw: data.into(), [INFO] [stdout] | ^^^^^^^^^^^ help: consider removing `.into()`: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the impl [INFO] [stdout] --> src/input_stream.rs:146:6 [INFO] [stdout] | [INFO] [stdout] 146 | impl<'a, Data: Deref> InputStream [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] = note: `#[warn(clippy::extra_unused_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the impl [INFO] [stdout] --> src/input_stream.rs:157:6 [INFO] [stdout] | [INFO] [stdout] 157 | impl<'a, Data: Deref> IntStream for InputStream [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/prediction_context/test.rs:814:5 [INFO] [stdout] | [INFO] [stdout] 814 | return format!("digraph G {{\nrankdir=LR;\n{}{}}}\n", nodes, edges); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 814 - return format!("digraph G {{\nrankdir=LR;\n{}{}}}\n", nodes, edges); [INFO] [stdout] 814 + format!("digraph G {{\nrankdir=LR;\n{}{}}}\n", nodes, edges) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/prediction_context/test.rs:759:13 [INFO] [stdout] | [INFO] [stdout] 759 | nodes.extend("shape=record, ".chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `nodes.push_str("shape=record, ")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/prediction_context/test.rs:762:9 [INFO] [stdout] | [INFO] [stdout] 762 | nodes.extend("label=\"".chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `nodes.push_str("label=\"")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/prediction_context/test.rs:778:13 [INFO] [stdout] | [INFO] [stdout] 778 | nodes.extend(context_ids.get(¤t_ptr).unwrap().to_string().chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `nodes.push_str(&context_ids.get(¤t_ptr).unwrap().to_string())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/prediction_context/test.rs:781:9 [INFO] [stdout] | [INFO] [stdout] 781 | nodes.extend("\"];\n".chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `nodes.push_str("\"];\n")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `Option::map` [INFO] [stdout] --> src/lexer.rs:400:9 [INFO] [stdout] | [INFO] [stdout] 400 | / match &mut self.input { [INFO] [stdout] 401 | | None => None, [INFO] [stdout] 402 | | Some(x) => Some(x as _), [INFO] [stdout] 403 | | } [INFO] [stdout] | |_________^ help: try: `self.input.as_mut().map(|x| x as _)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map [INFO] [stdout] = note: `#[warn(clippy::manual_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `map` over `inspect` [INFO] [stdout] --> src/lexer.rs:476:31 [INFO] [stdout] | [INFO] [stdout] 476 | self.mode_stack.pop().map(|mode| { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_inspect [INFO] [stdout] = note: `#[warn(clippy::manual_inspect)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 476 ~ self.mode_stack.pop().inspect(|&mode| { [INFO] [stdout] 477 ~ self.mode = mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/prediction_context.rs:92:71 [INFO] [stdout] | [INFO] [stdout] 92 | self.return_state == PREDICTION_CONTEXT_EMPTY_RETURN_STATE && self.parent_ctx == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `self.parent_ctx.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] = note: `#[warn(clippy::partialeq_to_none)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: importing legacy numeric constants [INFO] [stdout] --> src/lexer_atn_simulator.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::usize; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import [INFO] [stdout] = note: then `usize::` will resolve to the respective associated constant [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:46:10 [INFO] [stdout] | [INFO] [stdout] 46 | ) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:87:22 [INFO] [stdout] | [INFO] [stdout] 87 | let result = (|| { [INFO] [stdout] | ______________________^ [INFO] [stdout] 88 | | self.start_index = lexer.input().index(); [INFO] [stdout] 89 | | self.prev_accept.reset(); [INFO] [stdout] 90 | | let temp = self.base.decision_to_dfa.clone(); [INFO] [stdout] ... | [INFO] [stdout] 102 | | })(); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/prediction_context.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 355 | return r; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 355 - return r; [INFO] [stdout] 355 + r [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:193:10 [INFO] [stdout] | [INFO] [stdout] 193 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:226:10 [INFO] [stdout] | [INFO] [stdout] 226 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lexer_atn_simulator.rs:248:13 [INFO] [stdout] | [INFO] [stdout] 248 | / if self.capture_sim_state(dfa.as_ref().unwrap(), lexer.input(), target) { [INFO] [stdout] 249 | | if symbol == EOF { [INFO] [stdout] 250 | | break; [INFO] [stdout] 251 | | } [INFO] [stdout] 252 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 248 ~ if self.capture_sim_state(dfa.as_ref().unwrap(), lexer.input(), target) [INFO] [stdout] 249 ~ && symbol == EOF { [INFO] [stdout] 250 | break; [INFO] [stdout] 251 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/prediction_context.rs:517:9 [INFO] [stdout] | [INFO] [stdout] 517 | return m; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 517 - return m; [INFO] [stdout] 517 + m [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:378:10 [INFO] [stdout] | [INFO] [stdout] 378 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the function definition [INFO] [stdout] --> src/lexer_atn_simulator.rs:408:15 [INFO] [stdout] | [INFO] [stdout] 408 | fn accept<'input>(&mut self, input: &mut impl IntStream) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct pattern is not needed for a unit variant [INFO] [stdout] --> src/lexer_atn_simulator.rs:452:43 [INFO] [stdout] | [INFO] [stdout] 452 | if let ATNStateType::RuleStopState {} = state.get_state_type() { [INFO] [stdout] | ^^^ help: remove the struct pattern [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unneeded_struct_pattern [INFO] [stdout] = note: `#[warn(clippy::unneeded_struct_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/prediction_context.rs:651:9 [INFO] [stdout] | [INFO] [stdout] 651 | return updated; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 651 - return updated; [INFO] [stdout] 651 + updated [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lexer_atn_simulator.rs:587:17 [INFO] [stdout] | [INFO] [stdout] 587 | / if _treat_eofas_epsilon { [INFO] [stdout] 588 | | if _trans.matches(EOF, LEXER_MIN_CHAR_VALUE, LEXER_MAX_CHAR_VALUE) { [INFO] [stdout] 589 | | let target = self.atn().states[_trans.get_target()].as_ref(); [INFO] [stdout] 590 | | result = Some(_config.cloned(target)); [INFO] [stdout] 591 | | } [INFO] [stdout] 592 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 587 ~ if _treat_eofas_epsilon [INFO] [stdout] 588 ~ && _trans.matches(EOF, LEXER_MIN_CHAR_VALUE, LEXER_MAX_CHAR_VALUE) { [INFO] [stdout] 589 | let target = self.atn().states[_trans.get_target()].as_ref(); [INFO] [stdout] 590 | result = Some(_config.cloned(target)); [INFO] [stdout] 591 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lexer_atn_simulator.rs:628:9 [INFO] [stdout] | [INFO] [stdout] 628 | return result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 628 - return result; [INFO] [stdout] 628 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/prediction_context.rs:631:26 [INFO] [stdout] | [INFO] [stdout] 631 | let updated = if parents.len() == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `parents.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: this item has comments with 4 forward slashes (`////`). These look like doc comments, but they aren't [INFO] [stdout] --> src/semantic_context.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | / //// fn evaluate(&self, parser: &Recognizer, outerContext: &RuleContext) -> bool; [INFO] [stdout] 10 | | //// fn eval_precedence(&self, parser: &Recognizer, outerContext: &RuleContext, ) -> Box; [INFO] [stdout] ... | [INFO] [stdout] 21 | | #[derive(Clone, Eq, PartialEq, Hash, Debug)] [INFO] [stdout] 22 | | pub enum SemanticContext { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#four_forward_slashes [INFO] [stdout] = note: `#[warn(clippy::four_forward_slashes)]` on by default [INFO] [stdout] help: turn these into doc comments by removing one `/` [INFO] [stdout] | [INFO] [stdout] 9 + /// fn evaluate(&self, parser: &Recognizer, outerContext: &RuleContext) -> bool; [INFO] [stdout] 10 ~ /// fn eval_precedence(&self, parser: &Recognizer, outerContext: &RuleContext, ) -> Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lexer_atn_simulator.rs:652:12 [INFO] [stdout] | [INFO] [stdout] 652 | if t < MIN_DFA_EDGE || t > MAX_DFA_EDGE { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(MIN_DFA_EDGE..=MAX_DFA_EDGE).contains(&t)` [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: you are explicitly cloning with `.map()` [INFO] [stdout] --> src/lexer_atn_simulator.rs:680:21 [INFO] [stdout] | [INFO] [stdout] 680 | / c.get_lexer_executor() [INFO] [stdout] 681 | | .map(LexerActionExecutor::clone) [INFO] [stdout] | |________________________________________________________^ help: consider calling the dedicated `cloned` method: `c.get_lexer_executor().cloned()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty doc comment [INFO] [stdout] --> src/parser.rs:189:1 [INFO] [stdout] | [INFO] [stdout] 189 | /// [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing or filling it [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_docs [INFO] [stdout] = note: `#[warn(clippy::empty_docs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser.rs:428:10 [INFO] [stdout] | [INFO] [stdout] 428 | ) -> Result<>::Tok, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser.rs:446:9 [INFO] [stdout] | [INFO] [stdout] 446 | return Ok(token); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 446 - return Ok(token); [INFO] [stdout] 446 + Ok(token) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser.rs:453:10 [INFO] [stdout] | [INFO] [stdout] 453 | ) -> Result<>::Tok, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser.rs:467:9 [INFO] [stdout] | [INFO] [stdout] 467 | return Ok(t); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 467 - return Ok(t); [INFO] [stdout] 467 + Ok(t) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/token_stream.rs:136:16 [INFO] [stdout] | [INFO] [stdout] 136 | if self.tokens.len() > 0 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!self.tokens.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: unneeded `return` statement [INFO] [stdout] --> src/token_stream.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | return buf; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 200 - return buf; [INFO] [stdout] 200 + buf [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/token_stream.rs:197:13 [INFO] [stdout] | [INFO] [stdout] 197 | buf.extend(t.get_text().to_display().chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `buf.push_str(&t.get_text().to_display())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `self.ctx` after checking its variant with `is_some` [INFO] [stdout] --> src/parser.rs:646:13 [INFO] [stdout] | [INFO] [stdout] 645 | if self.build_parse_trees && self.ctx.is_some() { [INFO] [stdout] | ------------------ the check is happening here [INFO] [stdout] 646 | self.ctx.as_ref().unwrap().add_child(retctx); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/parser.rs:631:41 [INFO] [stdout] | [INFO] [stdout] 631 | while self.ctx.as_ref().map(|x| Rc::as_ptr(x)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Rc::as_ptr` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/token_stream.rs:241:9 [INFO] [stdout] | [INFO] [stdout] 241 | / if self.markers_count == 0 { [INFO] [stdout] 242 | | if self.p > 0 { [INFO] [stdout] 243 | | self.tokens.drain(0..self.p as usize); [INFO] [stdout] ... | [INFO] [stdout] 263 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 241 ~ if self.markers_count == 0 [INFO] [stdout] 242 ~ && self.p > 0 { [INFO] [stdout] 243 | self.tokens.drain(0..self.p as usize); [INFO] [stdout] ... [INFO] [stdout] 261 | self.p = 0; [INFO] [stdout] 262 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/parser.rs:632:44 [INFO] [stdout] | [INFO] [stdout] 632 | != parent_ctx.as_ref().map(|x| Rc::as_ptr(x)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Rc::as_ptr` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stdout] --> src/parser.rs:705:22 [INFO] [stdout] | [INFO] [stdout] 705 | fn new(listener: &Box) -> ListenerId { [INFO] [stdout] | ^^^^^^^ help: try: `&T` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stdout] = note: `#[warn(clippy::borrowed_box)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: importing legacy numeric constants [INFO] [stdout] --> src/parser_atn_simulator.rs:10:16 [INFO] [stdout] | [INFO] [stdout] 10 | use std::{ptr, usize}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import [INFO] [stdout] = note: then `usize::` will resolve to the respective associated constant [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/dfa.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | usize::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] 72 - usize::max_value(), [INFO] [stdout] 72 + usize::MAX, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/dfa.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | / return format!( [INFO] [stdout] 149 | | "{}", [INFO] [stdout] 150 | | DFASerializer::new(self, &|x| vocabulary [INFO] [stdout] 151 | | .get_display_name(x as isize - 1) [INFO] [stdout] 152 | | .into_owned(),) [INFO] [stdout] 153 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 148 ~ format!( [INFO] [stdout] 149 + "{}", [INFO] [stdout] 150 + DFASerializer::new(self, &|x| vocabulary [INFO] [stdout] 151 + .get_display_name(x as isize - 1) [INFO] [stdout] 152 + .into_owned(),) [INFO] [stdout] 153 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser_atn_simulator.rs:166:10 [INFO] [stdout] | [INFO] [stdout] 166 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a new box [INFO] [stdout] --> src/parser_atn_simulator.rs:206:21 [INFO] [stdout] | [INFO] [stdout] 206 | local.dfa_mut().states[s0].configs = Box::new(s0_closure); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace existing content with inner value instead: `*local.dfa_mut().states[s0].configs = s0_closure` [INFO] [stdout] | [INFO] [stdout] = note: this creates a needless allocation [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#replace_box [INFO] [stdout] = note: `#[warn(clippy::replace_box)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser_atn_simulator.rs:243:10 [INFO] [stdout] | [INFO] [stdout] 243 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser_atn_simulator.rs:463:10 [INFO] [stdout] | [INFO] [stdout] 463 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:621:9 [INFO] [stdout] | [INFO] [stdout] 621 | return Some(reach); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 621 - return Some(reach); [INFO] [stdout] 621 + Some(reach) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/tree.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 141 | usize::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] 141 - usize::max_value() [INFO] [stdout] 141 + usize::MAX [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:630:9 [INFO] [stdout] | [INFO] [stdout] 630 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 630 - return false; [INFO] [stdout] 630 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:640:9 [INFO] [stdout] | [INFO] [stdout] 640 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 640 - return true; [INFO] [stdout] 640 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/tree.rs:265:25 [INFO] [stdout] | [INFO] [stdout] 265 | self.visit_node(&node); [INFO] [stdout] | ^^^^^ help: change this to: `node` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tree.rs:291:9 [INFO] [stdout] | [INFO] [stdout] 291 | return result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 291 - return result; [INFO] [stdout] 291 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:813:9 [INFO] [stdout] | [INFO] [stdout] 813 | return Some(alt_to_pred); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 813 - return Some(alt_to_pred); [INFO] [stdout] 813 + Some(alt_to_pred) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:903:9 [INFO] [stdout] | [INFO] [stdout] 903 | return alts.get_min().unwrap_or(INVALID_ALT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 903 - return alts.get_min().unwrap_or(INVALID_ALT); [INFO] [stdout] 903 + alts.get_min().unwrap_or(INVALID_ALT) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/atn.rs:152:26 [INFO] [stdout] | [INFO] [stdout] 152 | expected.add_set(&following); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `following` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Vec` is already on the heap, the boxing is unnecessary [INFO] [stdout] --> src/atn_config_set.rs:25:25 [INFO] [stdout] | [INFO] [stdout] 25 | pub(crate) configs: 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: this function has too many arguments (8/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:947:5 [INFO] [stdout] | [INFO] [stdout] 947 | / fn closure<'a, T: Parser<'a>>( [INFO] [stdout] 948 | | &self, [INFO] [stdout] 949 | | config: ATNConfig, [INFO] [stdout] 950 | | configs: &mut ATNConfigSet, [INFO] [stdout] ... | [INFO] [stdout] 955 | | local: &mut Local<'_, 'a, T>, [INFO] [stdout] 956 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:974:5 [INFO] [stdout] | [INFO] [stdout] 974 | / fn closure_checking_stop_state<'a, T: Parser<'a>>( [INFO] [stdout] 975 | | &self, [INFO] [stdout] 976 | | mut config: ATNConfig, [INFO] [stdout] 977 | | configs: &mut ATNConfigSet, [INFO] [stdout] ... | [INFO] [stdout] 983 | | local: &mut Local<'_, 'a, T>, [INFO] [stdout] 984 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/parser_atn_simulator.rs:1030:37 [INFO] [stdout] | [INFO] [stdout] 1030 | assert!(depth > isize::min_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] 1030 - assert!(depth > isize::min_value()); [INFO] [stdout] 1030 + assert!(depth > isize::MIN); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:1061:5 [INFO] [stdout] | [INFO] [stdout] 1061 | / fn closure_work<'a, T: Parser<'a>>( [INFO] [stdout] 1062 | | &self, [INFO] [stdout] 1063 | | config: ATNConfig, [INFO] [stdout] 1064 | | configs: &mut ATNConfigSet, [INFO] [stdout] ... | [INFO] [stdout] 1070 | | local: &mut Local<'_, 'a, T>, [INFO] [stdout] 1071 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/parser_atn_simulator.rs:1119:41 [INFO] [stdout] | [INFO] [stdout] 1119 | assert!(new_depth > isize::min_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] 1119 - assert!(new_depth > isize::min_value()); [INFO] [stdout] 1119 + assert!(new_depth > isize::MIN); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/parser_atn_simulator.rs:1126:21 [INFO] [stdout] | [INFO] [stdout] 1126 | / if tr.get_serialization_type() == TransitionType::TRANSITION_RULE { [INFO] [stdout] 1127 | | if new_depth >= 0 { [INFO] [stdout] 1128 | | new_depth += 1 [INFO] [stdout] 1129 | | } [INFO] [stdout] 1130 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1126 ~ if tr.get_serialization_type() == TransitionType::TRANSITION_RULE [INFO] [stdout] 1127 ~ && new_depth >= 0 { [INFO] [stdout] 1128 | new_depth += 1 [INFO] [stdout] 1129 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:1225:9 [INFO] [stdout] | [INFO] [stdout] 1225 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1225 - return true; [INFO] [stdout] 1225 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:1230:5 [INFO] [stdout] | [INFO] [stdout] 1230 | / fn get_epsilon_target<'a, T: Parser<'a>>( [INFO] [stdout] 1231 | | &self, [INFO] [stdout] 1232 | | config: &ATNConfig, [INFO] [stdout] 1233 | | t: &dyn Transition, [INFO] [stdout] ... | [INFO] [stdout] 1238 | | local: &mut Local<'_, 'a, T>, [INFO] [stdout] 1239 | | ) -> Option { [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `unwrap_or` to construct default value [INFO] [stdout] --> src/atn_deserializer.rs:51:46 [INFO] [stdout] | [INFO] [stdout] 51 | deserialization_options: options.unwrap_or(ATNDeserializationOptions::default()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/parser_atn_simulator.rs:1329:12 [INFO] [stdout] | [INFO] [stdout] 1329 | if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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] help: try [INFO] [stdout] | [INFO] [stdout] 1329 - if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] 1329 + if !(!collect_predicates || pt.is_ctx_dependent && !in_context) { [INFO] [stdout] | [INFO] [stdout] 1329 - if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] 1329 + if (in_context || !pt.is_ctx_dependent) && collect_predicates { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/parser_atn_simulator.rs:1329:34 [INFO] [stdout] | [INFO] [stdout] 1329 | if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 1329 - if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] 1329 + if collect_predicates && !(pt.is_ctx_dependent && !in_context) { [INFO] [stdout] | [INFO] [stdout] 1329 - if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] 1329 + if collect_predicates && !pt.is_ctx_dependent || in_context { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:1371:9 [INFO] [stdout] | [INFO] [stdout] 1371 | / return if configs.get_unique_alt() != INVALID_ALT { [INFO] [stdout] 1372 | | BitSet::new().modify_with(|it| { [INFO] [stdout] 1373 | | it.insert(configs.get_unique_alt() as usize); [INFO] [stdout] 1374 | | }) [INFO] [stdout] 1375 | | } else { [INFO] [stdout] 1376 | | configs.conflicting_alts.clone() [INFO] [stdout] 1377 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1371 ~ if configs.get_unique_alt() != INVALID_ALT { [INFO] [stdout] 1372 + BitSet::new().modify_with(|it| { [INFO] [stdout] 1373 + it.insert(configs.get_unique_alt() as usize); [INFO] [stdout] 1374 + }) [INFO] [stdout] 1375 + } else { [INFO] [stdout] 1376 + configs.conflicting_alts.clone() [INFO] [stdout] 1377 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/atn_deserializer.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 128 | / let atn = ATN::new_atn( [INFO] [stdout] 129 | | match data.next() { [INFO] [stdout] 130 | | Some(0) => ATNType::LEXER, [INFO] [stdout] 131 | | Some(1) => ATNType::PARSER, [INFO] [stdout] ... | [INFO] [stdout] 134 | | data.next().unwrap(), [INFO] [stdout] 135 | | ); [INFO] [stdout] | |__________- unnecessary `let` binding [INFO] [stdout] 136 | [INFO] [stdout] 137 | atn [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] 128 ~ [INFO] [stdout] 129 | [INFO] [stdout] 130 ~ ATN::new_atn( [INFO] [stdout] 131 + match data.next() { [INFO] [stdout] 132 + Some(0) => ATNType::LEXER, [INFO] [stdout] 133 + Some(1) => ATNType::PARSER, [INFO] [stdout] 134 + _ => panic!("invalid ATN type"), [INFO] [stdout] 135 + }, [INFO] [stdout] 136 + data.next().unwrap(), [INFO] [stdout] 137 + ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/parser_atn_simulator.rs:1456:14 [INFO] [stdout] | [INFO] [stdout] 1456 | .or_insert(Vec::new()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:1498:5 [INFO] [stdout] | [INFO] [stdout] 1498 | / fn report_ambiguity<'a, T: Parser<'a>>( [INFO] [stdout] 1499 | | &self, [INFO] [stdout] 1500 | | dfa: &DFA, [INFO] [stdout] 1501 | | start_index: isize, [INFO] [stdout] ... | [INFO] [stdout] 1506 | | parser: &mut T, [INFO] [stdout] 1507 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/prediction_mode.rs:113:5 [INFO] [stdout] | [INFO] [stdout] 113 | return heuristic; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 113 - return heuristic; [INFO] [stdout] 113 + heuristic [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref on an immutable reference [INFO] [stdout] --> src/prediction_mode.rs:94:23 [INFO] [stdout] | [INFO] [stdout] 94 | let mut configs = &*configs; [INFO] [stdout] | ^^^^^^^^^ help: if you would like to reborrow, try removing `&*`: `configs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrow_deref_ref [INFO] [stdout] = note: `#[warn(clippy::borrow_deref_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/prediction_mode.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | / if mode == PredictionMode::SLL { [INFO] [stdout] 96 | | if configs.has_semantic_context() { [INFO] [stdout] 97 | | configs.get_items().for_each(|it| { [INFO] [stdout] 98 | | let c = ATNConfig::new_with_semantic( [INFO] [stdout] ... | [INFO] [stdout] 108 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 95 ~ if mode == PredictionMode::SLL [INFO] [stdout] 96 ~ && configs.has_semantic_context() { [INFO] [stdout] 97 | configs.get_items().for_each(|it| { [INFO] [stdout] ... [INFO] [stdout] 106 | configs = &dup; [INFO] [stdout] 107 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/prediction_mode.rs:110:47 [INFO] [stdout] | [INFO] [stdout] 110 | let altsets = get_conflicting_alt_subsets(&configs); [INFO] [stdout] | ^^^^^^^^ help: change this to: `configs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/prediction_mode.rs:112:81 [INFO] [stdout] | [INFO] [stdout] 112 | has_conflicting_alt_set(&altsets) && !has_state_associated_with_one_alt(&configs); [INFO] [stdout] | ^^^^^^^^ help: change this to: `configs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/prediction_mode.rs:128:42 [INFO] [stdout] | [INFO] [stdout] 128 | pub(crate) fn all_subsets_equal(altsets: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 128 - pub(crate) fn all_subsets_equal(altsets: &Vec) -> bool { [INFO] [stdout] 128 + pub(crate) fn all_subsets_equal(altsets: &[BitSet]) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/prediction_mode.rs:134:41 [INFO] [stdout] | [INFO] [stdout] 134 | fn has_non_conflicting_alt_set(altsets: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 134 - fn has_non_conflicting_alt_set(altsets: &Vec) -> bool { [INFO] [stdout] 134 + fn has_non_conflicting_alt_set(altsets: &[BitSet]) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/prediction_mode.rs:149:33 [INFO] [stdout] | [INFO] [stdout] 149 | pub(crate) fn get_alts(altsets: &Vec) -> BitSet { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 149 - pub(crate) fn get_alts(altsets: &Vec) -> BitSet { [INFO] [stdout] 149 + pub(crate) fn get_alts(altsets: &[BitSet]) -> BitSet { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/atn_deserializer.rs:452:5 [INFO] [stdout] | [INFO] [stdout] 452 | / fn edge_factory( [INFO] [stdout] 453 | | &self, [INFO] [stdout] 454 | | _atn: &ATN, [INFO] [stdout] 455 | | type_index: isize, [INFO] [stdout] ... | [INFO] [stdout] 461 | | sets: &Vec, [INFO] [stdout] 462 | | ) -> Box { [INFO] [stdout] | |____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/atn_deserializer.rs:461:15 [INFO] [stdout] | [INFO] [stdout] 461 | sets: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 461 - sets: &Vec, [INFO] [stdout] 461 + sets: &[IntervalSet], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/token.rs:223:9 [INFO] [stdout] | [INFO] [stdout] 223 | &**INVALID_OWNING [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `&INVALID_OWNING` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/token.rs:229:9 [INFO] [stdout] | [INFO] [stdout] 229 | &**INVALID_COMMON [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `&INVALID_COMMON` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/trees.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | result.extend(s.chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `result.push_str(&s)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/trees.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | acc.extend(text.chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `acc.push_str(&text)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/utils.rs:9:33 [INFO] [stdout] | [INFO] [stdout] 9 | ' ' if escape_spaces => res.extend("\u{00B7}".chars()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `res.push_str("\u{00B7}")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/utils.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | '\t' => res.extend("\\t".chars()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `res.push_str("\\t")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/utils.rs:11:17 [INFO] [stdout] | [INFO] [stdout] 11 | '\n' => res.extend("\\n".chars()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `res.push_str("\\n")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/utils.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | '\r' => res.extend("\\r".chars()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `res.push_str("\\r")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `LEXER` contains a capitalized acronym [INFO] [stdout] --> src/atn_type.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | LEXER = 0, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Lexer` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `PARSER` contains a capitalized acronym [INFO] [stdout] --> src/atn_type.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | PARSER, [INFO] [stdout] | ^^^^^^ help: consider making the acronym lowercase, except the initial letter: `Parser` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/common_token_stream.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | return self.base.tokens.get(i as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 125 - return self.base.tokens.get(i as usize); [INFO] [stdout] 125 + self.base.tokens.get(i as usize) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/common_token_stream.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | return i; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 179 - return i; [INFO] [stdout] 179 + i [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/common_token_stream.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | return self.base.tokens.get(i as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 224 - return self.base.tokens.get(i as usize); [INFO] [stdout] 224 + self.base.tokens.get(i as usize) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/rule_context.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | usize::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] 81 - usize::max_value() [INFO] [stdout] 81 + usize::MAX [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/rule_context.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 137 | return rule_name.to_owned(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 137 - return rule_name.to_owned(); [INFO] [stdout] 137 + rule_name.to_owned() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `map(..).flatten()` on `Option` [INFO] [stdout] --> src/rule_context.rs:223:14 [INFO] [stdout] | [INFO] [stdout] 223 | .map(Weak::upgrade) [INFO] [stdout] | ______________^ [INFO] [stdout] 224 | | .flatten() [INFO] [stdout] | |______________________^ help: try replacing `map` with `and_then` and remove the `.flatten()`: `and_then(Weak::upgrade)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_flatten [INFO] [stdout] = note: `#[warn(clippy::map_flatten)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/error_listener.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | / fn report_ambiguity( [INFO] [stdout] 41 | | &self, [INFO] [stdout] 42 | | _recognizer: &T, [INFO] [stdout] 43 | | _dfa: &DFA, [INFO] [stdout] ... | [INFO] [stdout] 48 | | _configs: &ATNConfigSet, [INFO] [stdout] 49 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should use the `starts_with` method [INFO] [stdout] --> src/vocabulary.rs:64:47 [INFO] [stdout] | [INFO] [stdout] 64 | Some(tn) if !tn.is_empty() && tn.chars().next().unwrap() == '\'' => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: like this: `tn.starts_with('\'')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#chars_next_cmp [INFO] [stdout] = note: `#[warn(clippy::chars_next_cmp)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/vocabulary.rs:115:18 [INFO] [stdout] | [INFO] [stdout] 115 | .map(|x| Borrowed(x)) [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `Borrowed` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 189 | /// grammar can match the input. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 189 | /// grammar can match the input. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 191 | /// prediction resolved an SLL conflict to a unique alternative which equaled the [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 191 | /// prediction resolved an SLL conflict to a unique alternative which equaled the [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:192:5 [INFO] [stdout] | [INFO] [stdout] 192 | /// minimum alternative of the SLL conflict. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 192 | /// minimum alternative of the SLL conflict. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 194 | /// full-context prediction resolved an SLL conflict to a unique alternative, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 194 | /// full-context prediction resolved an SLL conflict to a unique alternative, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:184:5 [INFO] [stdout] | [INFO] [stdout] 184 | fn coerce_rc(from: Rc) -> Rc; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | #![warn(missing_docs)] // warn if there is missing docs [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:185:5 [INFO] [stdout] | [INFO] [stdout] 185 | fn coerce_box(from: Box) -> Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:186:5 [INFO] [stdout] | [INFO] [stdout] 186 | fn coerce_ref(from: &T) -> &Self; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | fn coerce_mut(from: &mut T) -> &mut Self; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:195:5 [INFO] [stdout] | [INFO] [stdout] 195 | /// *and* the minimum alternative of the SLL conflict was found to not be [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 195 | /// *and* the minimum alternative of the SLL conflict was found to not be [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:220:5 [INFO] [stdout] | [INFO] [stdout] 220 | fn coerce_rc_to(self: Rc) -> Rc; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:196:5 [INFO] [stdout] | [INFO] [stdout] 196 | /// a truly viable alternative. Two-stage parsing cannot be used for inputs where [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 196 | /// a truly viable alternative. Two-stage parsing cannot be used for inputs where [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | fn coerce_box_to(self: Box) -> Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:222:5 [INFO] [stdout] | [INFO] [stdout] 222 | fn coerce_ref_to(self: &Self) -> &T; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:223:5 [INFO] [stdout] | [INFO] [stdout] 223 | fn coerce_mut_to(self: &mut Self) -> &mut T; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_listener.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | /// this situation occurs. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 197 | /// this situation occurs. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | /// the available alternatives could possibly match) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 29 | /// the available alternatives could possibly match) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/error_strategy.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | ) -> Result<>::Tok, ANTLRError>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] = note: `#[warn(clippy::result_large_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/error_strategy.rs:64:66 [INFO] [stdout] | [INFO] [stdout] 64 | fn recover(&mut self, recognizer: &mut T, e: &ANTLRError) -> Result<(), ANTLRError>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/error_strategy.rs:73:47 [INFO] [stdout] | [INFO] [stdout] 73 | fn sync(&mut self, recognizer: &mut T) -> Result<(), ANTLRError>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a trait [INFO] [stdout] --> src/tree.rs:248:1 [INFO] [stdout] | [INFO] [stdout] 248 | pub trait ParseTreeVisitorCompat<'input>: VisitChildren<'input, Self::Node> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated type [INFO] [stdout] --> src/tree.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | type Node: ParserNodeType<'input>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated type [INFO] [stdout] --> src/tree.rs:250:5 [INFO] [stdout] | [INFO] [stdout] 250 | type Return: Default; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | fn visit(&mut self, node: &>::Type) -> Self::Return { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:278:5 [INFO] [stdout] | [INFO] [stdout] 278 | / fn visit_children( [INFO] [stdout] 279 | | &mut self, [INFO] [stdout] 280 | | node: &>::Type, [INFO] [stdout] 281 | | ) -> Self::Return { [INFO] [stdout] | |_____________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:294:5 [INFO] [stdout] | [INFO] [stdout] 294 | fn aggregate_results(&self, aggregate: Self::Return, next: Self::Return) -> Self::Return { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:298:5 [INFO] [stdout] | [INFO] [stdout] 298 | / fn should_visit_next_child( [INFO] [stdout] 299 | | &self, [INFO] [stdout] 300 | | node: &>::Type, [INFO] [stdout] 301 | | current: &Self::Return, [INFO] [stdout] 302 | | ) -> bool { [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:359:5 [INFO] [stdout] | [INFO] [stdout] 359 | fn visit_node(&mut self, node: &Node::Type); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type does not implement `std::fmt::Debug`; consider adding `#[derive(Debug)]` or a manual implementation [INFO] [stdout] --> src/lexer.rs:78:1 [INFO] [stdout] | [INFO] [stdout] 78 | / pub struct BaseLexer< [INFO] [stdout] 79 | | 'input, [INFO] [stdout] 80 | | T: LexerRecog<'input, Self> + 'static, [INFO] [stdout] 81 | | Input: CharStream, [INFO] [stdout] ... | [INFO] [stdout] 110 | | pub text: Option<::Owned>, [INFO] [stdout] 111 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | #![warn(missing_debug_implementations)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type does not implement `std::fmt::Debug`; consider adding `#[derive(Debug)]` or a manual implementation [INFO] [stdout] --> src/parser.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / pub struct BaseParser< [INFO] [stdout] 110 | | 'input, [INFO] [stdout] 111 | | Ext, //: 'static, //: ParserRecog<'input, Self> + 'static, // user provided behavior, such as semantic predicates [INFO] [stdout] 112 | | I: TokenStream<'input>, // input stream [INFO] [stdout] ... | [INFO] [stdout] 151 | | pd: PhantomData &'input str>, [INFO] [stdout] 152 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/error_strategy.rs:385:9 [INFO] [stdout] | [INFO] [stdout] 385 | return recover_set; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 385 - return recover_set; [INFO] [stdout] 385 + recover_set [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/error_strategy.rs:524:76 [INFO] [stdout] | [INFO] [stdout] 524 | recognizer.notify_error_listeners(msg, offending_token_index, Some(&e)) [INFO] [stdout] | ^^ help: change this to: `e` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:542:5 [INFO] [stdout] | [INFO] [stdout] 542 | /// stage of two-stage parsing to immediately terminate if an error is [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 542 | /// stage of two-stage parsing to immediately terminate if an error is [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:543:5 [INFO] [stdout] | [INFO] [stdout] 543 | /// encountered, and immediately fall back to the second stage. In addition to [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 543 | /// encountered, and immediately fall back to the second stage. In addition to [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:544:5 [INFO] [stdout] | [INFO] [stdout] 544 | /// avoiding wasted work by attempting to recover from errors here, the empty [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 544 | /// avoiding wasted work by attempting to recover from errors here, the empty [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:545:5 [INFO] [stdout] | [INFO] [stdout] 545 | /// implementation of `sync` improves the performance of [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 545 | /// implementation of `sync` improves the performance of [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:546:5 [INFO] [stdout] | [INFO] [stdout] 546 | /// the first stage. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 546 | /// the first stage. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:548:5 [INFO] [stdout] | [INFO] [stdout] 548 | /// reported or logged, and the parse result is simply ignored if errors occur, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 548 | /// reported or logged, and the parse result is simply ignored if errors occur, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:549:5 [INFO] [stdout] | [INFO] [stdout] 549 | /// the `BailErrorStrategy` avoids wasting work on recovering from errors [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 549 | /// the `BailErrorStrategy` avoids wasting work on recovering from errors [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: doc list item without indentation [INFO] [stdout] --> src/error_strategy.rs:550:5 [INFO] [stdout] | [INFO] [stdout] 550 | /// when the result will be ignored either way. [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 550 | /// when the result will be ignored either way. [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/error_strategy.rs:586:9 [INFO] [stdout] | [INFO] [stdout] 586 | return ANTLRError::FallThrough(Rc::new(ParseCancelledError(e.clone()))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 586 - return ANTLRError::FallThrough(Rc::new(ParseCancelledError(e.clone()))); [INFO] [stdout] 586 + ANTLRError::FallThrough(Rc::new(ParseCancelledError(e.clone()))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/error_strategy.rs:625:44 [INFO] [stdout] | [INFO] [stdout] 625 | Err(self.process_error(recognizer, &e)) [INFO] [stdout] | ^^ help: change this to: `e` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this item has comments with 4 forward slashes (`////`). These look like doc comments, but they aren't [INFO] [stdout] --> src/errors.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / //// atn.get_expected_tokens(se) [INFO] [stdout] ... | [INFO] [stdout] 116 | | #[allow(missing_docs)] [INFO] [stdout] 117 | | pub struct BaseRecognitionError { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#four_forward_slashes [INFO] [stdout] help: make this a doc comment by removing one `/` [INFO] [stdout] | [INFO] [stdout] 109 - //// atn.get_expected_tokens(se) [INFO] [stdout] 110 - // unimplemented!() [INFO] [stdout] 109 + /// atn.get_expected_tokens(se) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> src/errors.rs:231:5 [INFO] [stdout] | [INFO] [stdout] 231 | / pub fn new<'a, T: Parser<'a>>( [INFO] [stdout] 232 | | recog: &mut T, [INFO] [stdout] 233 | | predicate: Option, [INFO] [stdout] 234 | | msg: Option, [INFO] [stdout] ... | [INFO] [stdout] 262 | | }) [INFO] [stdout] 263 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] = note: `#[warn(clippy::new_ret_no_self)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/input_stream.rs:63:6 [INFO] [stdout] | [INFO] [stdout] 63 | impl<'a, T> CharStream for InputStream<&'a [T]> [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] 63 - impl<'a, T> CharStream for InputStream<&'a [T]> [INFO] [stdout] 63 + impl CharStream for InputStream<&[T]> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/input_stream.rs:72:6 [INFO] [stdout] | [INFO] [stdout] 72 | impl<'a, 'b, T> CharStream> for InputStream<&'a [T]> [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] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 72 - impl<'a, 'b, T> CharStream> for InputStream<&'a [T]> [INFO] [stdout] 72 + impl<'b, T> CharStream> for InputStream<&[T]> [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::boxed::Box` [INFO] [stdout] --> src/input_stream.rs:109:23 [INFO] [stdout] | [INFO] [stdout] 109 | data_raw: data.into(), [INFO] [stdout] | ^^^^^^^^^^^ help: consider removing `.into()`: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the impl [INFO] [stdout] --> src/input_stream.rs:146:6 [INFO] [stdout] | [INFO] [stdout] 146 | impl<'a, Data: Deref> InputStream [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] = note: `#[warn(clippy::extra_unused_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the impl [INFO] [stdout] --> src/input_stream.rs:157:6 [INFO] [stdout] | [INFO] [stdout] 157 | impl<'a, Data: Deref> IntStream for InputStream [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `Option::map` [INFO] [stdout] --> src/lexer.rs:400:9 [INFO] [stdout] | [INFO] [stdout] 400 | / match &mut self.input { [INFO] [stdout] 401 | | None => None, [INFO] [stdout] 402 | | Some(x) => Some(x as _), [INFO] [stdout] 403 | | } [INFO] [stdout] | |_________^ help: try: `self.input.as_mut().map(|x| x as _)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map [INFO] [stdout] = note: `#[warn(clippy::manual_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `map` over `inspect` [INFO] [stdout] --> src/lexer.rs:476:31 [INFO] [stdout] | [INFO] [stdout] 476 | self.mode_stack.pop().map(|mode| { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_inspect [INFO] [stdout] = note: `#[warn(clippy::manual_inspect)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 476 ~ self.mode_stack.pop().inspect(|&mode| { [INFO] [stdout] 477 ~ self.mode = mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: importing legacy numeric constants [INFO] [stdout] --> src/lexer_atn_simulator.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::usize; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import [INFO] [stdout] = note: then `usize::` will resolve to the respective associated constant [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:46:10 [INFO] [stdout] | [INFO] [stdout] 46 | ) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:87:22 [INFO] [stdout] | [INFO] [stdout] 87 | let result = (|| { [INFO] [stdout] | ______________________^ [INFO] [stdout] 88 | | self.start_index = lexer.input().index(); [INFO] [stdout] 89 | | self.prev_accept.reset(); [INFO] [stdout] 90 | | let temp = self.base.decision_to_dfa.clone(); [INFO] [stdout] ... | [INFO] [stdout] 102 | | })(); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:193:10 [INFO] [stdout] | [INFO] [stdout] 193 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:226:10 [INFO] [stdout] | [INFO] [stdout] 226 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lexer_atn_simulator.rs:248:13 [INFO] [stdout] | [INFO] [stdout] 248 | / if self.capture_sim_state(dfa.as_ref().unwrap(), lexer.input(), target) { [INFO] [stdout] 249 | | if symbol == EOF { [INFO] [stdout] 250 | | break; [INFO] [stdout] 251 | | } [INFO] [stdout] 252 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 248 ~ if self.capture_sim_state(dfa.as_ref().unwrap(), lexer.input(), target) [INFO] [stdout] 249 ~ && symbol == EOF { [INFO] [stdout] 250 | break; [INFO] [stdout] 251 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/lexer_atn_simulator.rs:378:10 [INFO] [stdout] | [INFO] [stdout] 378 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the function definition [INFO] [stdout] --> src/lexer_atn_simulator.rs:408:15 [INFO] [stdout] | [INFO] [stdout] 408 | fn accept<'input>(&mut self, input: &mut impl IntStream) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct pattern is not needed for a unit variant [INFO] [stdout] --> src/lexer_atn_simulator.rs:452:43 [INFO] [stdout] | [INFO] [stdout] 452 | if let ATNStateType::RuleStopState {} = state.get_state_type() { [INFO] [stdout] | ^^^ help: remove the struct pattern [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unneeded_struct_pattern [INFO] [stdout] = note: `#[warn(clippy::unneeded_struct_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/lexer_atn_simulator.rs:587:17 [INFO] [stdout] | [INFO] [stdout] 587 | / if _treat_eofas_epsilon { [INFO] [stdout] 588 | | if _trans.matches(EOF, LEXER_MIN_CHAR_VALUE, LEXER_MAX_CHAR_VALUE) { [INFO] [stdout] 589 | | let target = self.atn().states[_trans.get_target()].as_ref(); [INFO] [stdout] 590 | | result = Some(_config.cloned(target)); [INFO] [stdout] 591 | | } [INFO] [stdout] 592 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 587 ~ if _treat_eofas_epsilon [INFO] [stdout] 588 ~ && _trans.matches(EOF, LEXER_MIN_CHAR_VALUE, LEXER_MAX_CHAR_VALUE) { [INFO] [stdout] 589 | let target = self.atn().states[_trans.get_target()].as_ref(); [INFO] [stdout] 590 | result = Some(_config.cloned(target)); [INFO] [stdout] 591 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lexer_atn_simulator.rs:628:9 [INFO] [stdout] | [INFO] [stdout] 628 | return result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 628 - return result; [INFO] [stdout] 628 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/lexer_atn_simulator.rs:652:12 [INFO] [stdout] | [INFO] [stdout] 652 | if t < MIN_DFA_EDGE || t > MAX_DFA_EDGE { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(MIN_DFA_EDGE..=MAX_DFA_EDGE).contains(&t)` [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: you are explicitly cloning with `.map()` [INFO] [stdout] --> src/lexer_atn_simulator.rs:680:21 [INFO] [stdout] | [INFO] [stdout] 680 | / c.get_lexer_executor() [INFO] [stdout] 681 | | .map(LexerActionExecutor::clone) [INFO] [stdout] | |________________________________________________________^ help: consider calling the dedicated `cloned` method: `c.get_lexer_executor().cloned()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty doc comment [INFO] [stdout] --> src/parser.rs:189:1 [INFO] [stdout] | [INFO] [stdout] 189 | /// [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing or filling it [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_docs [INFO] [stdout] = note: `#[warn(clippy::empty_docs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser.rs:428:10 [INFO] [stdout] | [INFO] [stdout] 428 | ) -> Result<>::Tok, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser.rs:446:9 [INFO] [stdout] | [INFO] [stdout] 446 | return Ok(token); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 446 - return Ok(token); [INFO] [stdout] 446 + Ok(token) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser.rs:453:10 [INFO] [stdout] | [INFO] [stdout] 453 | ) -> Result<>::Tok, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser.rs:467:9 [INFO] [stdout] | [INFO] [stdout] 467 | return Ok(t); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 467 - return Ok(t); [INFO] [stdout] 467 + Ok(t) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `self.ctx` after checking its variant with `is_some` [INFO] [stdout] --> src/parser.rs:646:13 [INFO] [stdout] | [INFO] [stdout] 645 | if self.build_parse_trees && self.ctx.is_some() { [INFO] [stdout] | ------------------ the check is happening here [INFO] [stdout] 646 | self.ctx.as_ref().unwrap().add_child(retctx); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/parser.rs:631:41 [INFO] [stdout] | [INFO] [stdout] 631 | while self.ctx.as_ref().map(|x| Rc::as_ptr(x)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Rc::as_ptr` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/parser.rs:632:44 [INFO] [stdout] | [INFO] [stdout] 632 | != parent_ctx.as_ref().map(|x| Rc::as_ptr(x)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Rc::as_ptr` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stdout] --> src/parser.rs:705:22 [INFO] [stdout] | [INFO] [stdout] 705 | fn new(listener: &Box) -> ListenerId { [INFO] [stdout] | ^^^^^^^ help: try: `&T` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stdout] = note: `#[warn(clippy::borrowed_box)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: importing legacy numeric constants [INFO] [stdout] --> src/parser_atn_simulator.rs:10:16 [INFO] [stdout] | [INFO] [stdout] 10 | use std::{ptr, usize}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import [INFO] [stdout] = note: then `usize::` will resolve to the respective associated constant [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser_atn_simulator.rs:166:10 [INFO] [stdout] | [INFO] [stdout] 166 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a new box [INFO] [stdout] --> src/parser_atn_simulator.rs:206:21 [INFO] [stdout] | [INFO] [stdout] 206 | local.dfa_mut().states[s0].configs = Box::new(s0_closure); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace existing content with inner value instead: `*local.dfa_mut().states[s0].configs = s0_closure` [INFO] [stdout] | [INFO] [stdout] = note: this creates a needless allocation [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#replace_box [INFO] [stdout] = note: `#[warn(clippy::replace_box)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser_atn_simulator.rs:243:10 [INFO] [stdout] | [INFO] [stdout] 243 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> src/parser_atn_simulator.rs:463:10 [INFO] [stdout] | [INFO] [stdout] 463 | ) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/errors.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | NoAltError(NoViableAltError), [INFO] [stdout] | ---------------------------- the largest variant contains at least 232 bytes [INFO] [stdout] ... [INFO] [stdout] 41 | InputMismatchError(InputMisMatchError), [INFO] [stdout] | -------------------------------------- the variant `InputMismatchError` contains at least 144 bytes [INFO] [stdout] ... [INFO] [stdout] 47 | PredicateError(FailedPredicateError), [INFO] [stdout] | ------------------------------------ the variant `PredicateError` contains at least 184 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:621:9 [INFO] [stdout] | [INFO] [stdout] 621 | return Some(reach); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 621 - return Some(reach); [INFO] [stdout] 621 + Some(reach) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:630:9 [INFO] [stdout] | [INFO] [stdout] 630 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 630 - return false; [INFO] [stdout] 630 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:640:9 [INFO] [stdout] | [INFO] [stdout] 640 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 640 - return true; [INFO] [stdout] 640 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:813:9 [INFO] [stdout] | [INFO] [stdout] 813 | return Some(alt_to_pred); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 813 - return Some(alt_to_pred); [INFO] [stdout] 813 + Some(alt_to_pred) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:903:9 [INFO] [stdout] | [INFO] [stdout] 903 | return alts.get_min().unwrap_or(INVALID_ALT); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 903 - return alts.get_min().unwrap_or(INVALID_ALT); [INFO] [stdout] 903 + alts.get_min().unwrap_or(INVALID_ALT) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:947:5 [INFO] [stdout] | [INFO] [stdout] 947 | / fn closure<'a, T: Parser<'a>>( [INFO] [stdout] 948 | | &self, [INFO] [stdout] 949 | | config: ATNConfig, [INFO] [stdout] 950 | | configs: &mut ATNConfigSet, [INFO] [stdout] ... | [INFO] [stdout] 955 | | local: &mut Local<'_, 'a, T>, [INFO] [stdout] 956 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:974:5 [INFO] [stdout] | [INFO] [stdout] 974 | / fn closure_checking_stop_state<'a, T: Parser<'a>>( [INFO] [stdout] 975 | | &self, [INFO] [stdout] 976 | | mut config: ATNConfig, [INFO] [stdout] 977 | | configs: &mut ATNConfigSet, [INFO] [stdout] ... | [INFO] [stdout] 983 | | local: &mut Local<'_, 'a, T>, [INFO] [stdout] 984 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/parser_atn_simulator.rs:1030:37 [INFO] [stdout] | [INFO] [stdout] 1030 | assert!(depth > isize::min_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] 1030 - assert!(depth > isize::min_value()); [INFO] [stdout] 1030 + assert!(depth > isize::MIN); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (9/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:1061:5 [INFO] [stdout] | [INFO] [stdout] 1061 | / fn closure_work<'a, T: Parser<'a>>( [INFO] [stdout] 1062 | | &self, [INFO] [stdout] 1063 | | config: ATNConfig, [INFO] [stdout] 1064 | | configs: &mut ATNConfigSet, [INFO] [stdout] ... | [INFO] [stdout] 1070 | | local: &mut Local<'_, 'a, T>, [INFO] [stdout] 1071 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/parser_atn_simulator.rs:1119:41 [INFO] [stdout] | [INFO] [stdout] 1119 | assert!(new_depth > isize::min_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] 1119 - assert!(new_depth > isize::min_value()); [INFO] [stdout] 1119 + assert!(new_depth > isize::MIN); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/parser_atn_simulator.rs:1126:21 [INFO] [stdout] | [INFO] [stdout] 1126 | / if tr.get_serialization_type() == TransitionType::TRANSITION_RULE { [INFO] [stdout] 1127 | | if new_depth >= 0 { [INFO] [stdout] 1128 | | new_depth += 1 [INFO] [stdout] 1129 | | } [INFO] [stdout] 1130 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1126 ~ if tr.get_serialization_type() == TransitionType::TRANSITION_RULE [INFO] [stdout] 1127 ~ && new_depth >= 0 { [INFO] [stdout] 1128 | new_depth += 1 [INFO] [stdout] 1129 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:1225:9 [INFO] [stdout] | [INFO] [stdout] 1225 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1225 - return true; [INFO] [stdout] 1225 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:1230:5 [INFO] [stdout] | [INFO] [stdout] 1230 | / fn get_epsilon_target<'a, T: Parser<'a>>( [INFO] [stdout] 1231 | | &self, [INFO] [stdout] 1232 | | config: &ATNConfig, [INFO] [stdout] 1233 | | t: &dyn Transition, [INFO] [stdout] ... | [INFO] [stdout] 1238 | | local: &mut Local<'_, 'a, T>, [INFO] [stdout] 1239 | | ) -> Option { [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/parser_atn_simulator.rs:1329:12 [INFO] [stdout] | [INFO] [stdout] 1329 | if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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] help: try [INFO] [stdout] | [INFO] [stdout] 1329 - if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] 1329 + if !(!collect_predicates || pt.is_ctx_dependent && !in_context) { [INFO] [stdout] | [INFO] [stdout] 1329 - if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] 1329 + if (in_context || !pt.is_ctx_dependent) && collect_predicates { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/parser_atn_simulator.rs:1329:34 [INFO] [stdout] | [INFO] [stdout] 1329 | if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 1329 - if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] 1329 + if collect_predicates && !(pt.is_ctx_dependent && !in_context) { [INFO] [stdout] | [INFO] [stdout] 1329 - if collect_predicates && (!pt.is_ctx_dependent || (pt.is_ctx_dependent && in_context)) { [INFO] [stdout] 1329 + if collect_predicates && !pt.is_ctx_dependent || in_context { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parser_atn_simulator.rs:1371:9 [INFO] [stdout] | [INFO] [stdout] 1371 | / return if configs.get_unique_alt() != INVALID_ALT { [INFO] [stdout] 1372 | | BitSet::new().modify_with(|it| { [INFO] [stdout] 1373 | | it.insert(configs.get_unique_alt() as usize); [INFO] [stdout] 1374 | | }) [INFO] [stdout] 1375 | | } else { [INFO] [stdout] 1376 | | configs.conflicting_alts.clone() [INFO] [stdout] 1377 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1371 ~ if configs.get_unique_alt() != INVALID_ALT { [INFO] [stdout] 1372 + BitSet::new().modify_with(|it| { [INFO] [stdout] 1373 + it.insert(configs.get_unique_alt() as usize); [INFO] [stdout] 1374 + }) [INFO] [stdout] 1375 + } else { [INFO] [stdout] 1376 + configs.conflicting_alts.clone() [INFO] [stdout] 1377 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/parser_atn_simulator.rs:1456:14 [INFO] [stdout] | [INFO] [stdout] 1456 | .or_insert(Vec::new()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/parser_atn_simulator.rs:1498:5 [INFO] [stdout] | [INFO] [stdout] 1498 | / fn report_ambiguity<'a, T: Parser<'a>>( [INFO] [stdout] 1499 | | &self, [INFO] [stdout] 1500 | | dfa: &DFA, [INFO] [stdout] 1501 | | start_index: isize, [INFO] [stdout] ... | [INFO] [stdout] 1506 | | parser: &mut T, [INFO] [stdout] 1507 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/prediction_mode.rs:113:5 [INFO] [stdout] | [INFO] [stdout] 113 | return heuristic; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 113 - return heuristic; [INFO] [stdout] 113 + heuristic [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref on an immutable reference [INFO] [stdout] --> src/prediction_mode.rs:94:23 [INFO] [stdout] | [INFO] [stdout] 94 | let mut configs = &*configs; [INFO] [stdout] | ^^^^^^^^^ help: if you would like to reborrow, try removing `&*`: `configs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrow_deref_ref [INFO] [stdout] = note: `#[warn(clippy::borrow_deref_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/prediction_mode.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | / if mode == PredictionMode::SLL { [INFO] [stdout] 96 | | if configs.has_semantic_context() { [INFO] [stdout] 97 | | configs.get_items().for_each(|it| { [INFO] [stdout] 98 | | let c = ATNConfig::new_with_semantic( [INFO] [stdout] ... | [INFO] [stdout] 108 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 95 ~ if mode == PredictionMode::SLL [INFO] [stdout] 96 ~ && configs.has_semantic_context() { [INFO] [stdout] 97 | configs.get_items().for_each(|it| { [INFO] [stdout] ... [INFO] [stdout] 106 | configs = &dup; [INFO] [stdout] 107 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/prediction_mode.rs:110:47 [INFO] [stdout] | [INFO] [stdout] 110 | let altsets = get_conflicting_alt_subsets(&configs); [INFO] [stdout] | ^^^^^^^^ help: change this to: `configs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/prediction_mode.rs:112:81 [INFO] [stdout] | [INFO] [stdout] 112 | has_conflicting_alt_set(&altsets) && !has_state_associated_with_one_alt(&configs); [INFO] [stdout] | ^^^^^^^^ help: change this to: `configs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/prediction_mode.rs:128:42 [INFO] [stdout] | [INFO] [stdout] 128 | pub(crate) fn all_subsets_equal(altsets: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 128 - pub(crate) fn all_subsets_equal(altsets: &Vec) -> bool { [INFO] [stdout] 128 + pub(crate) fn all_subsets_equal(altsets: &[BitSet]) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/prediction_mode.rs:134:41 [INFO] [stdout] | [INFO] [stdout] 134 | fn has_non_conflicting_alt_set(altsets: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 134 - fn has_non_conflicting_alt_set(altsets: &Vec) -> bool { [INFO] [stdout] 134 + fn has_non_conflicting_alt_set(altsets: &[BitSet]) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/prediction_mode.rs:149:33 [INFO] [stdout] | [INFO] [stdout] 149 | pub(crate) fn get_alts(altsets: &Vec) -> BitSet { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 149 - pub(crate) fn get_alts(altsets: &Vec) -> BitSet { [INFO] [stdout] 149 + pub(crate) fn get_alts(altsets: &[BitSet]) -> BitSet { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/token.rs:223:9 [INFO] [stdout] | [INFO] [stdout] 223 | &**INVALID_OWNING [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `&INVALID_OWNING` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/token.rs:229:9 [INFO] [stdout] | [INFO] [stdout] 229 | &**INVALID_COMMON [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `&INVALID_COMMON` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/trees.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | result.extend(s.chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `result.push_str(&s)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/trees.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | acc.extend(text.chars()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `acc.push_str(&text)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/utils.rs:9:33 [INFO] [stdout] | [INFO] [stdout] 9 | ' ' if escape_spaces => res.extend("\u{00B7}".chars()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `res.push_str("\u{00B7}")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/utils.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | '\t' => res.extend("\\t".chars()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `res.push_str("\\t")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/utils.rs:11:17 [INFO] [stdout] | [INFO] [stdout] 11 | '\n' => res.extend("\\n".chars()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `res.push_str("\\n")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `.extend(_.chars())` [INFO] [stdout] --> src/utils.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | '\r' => res.extend("\\r".chars()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `res.push_str("\\r")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_extend_chars [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `LEXER` contains a capitalized acronym [INFO] [stdout] --> src/atn_type.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | LEXER = 0, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Lexer` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `PARSER` contains a capitalized acronym [INFO] [stdout] --> src/atn_type.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | PARSER, [INFO] [stdout] | ^^^^^^ help: consider making the acronym lowercase, except the initial letter: `Parser` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric method [INFO] [stdout] --> src/rule_context.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | usize::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] 81 - usize::max_value() [INFO] [stdout] 81 + usize::MAX [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/rule_context.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 137 | return rule_name.to_owned(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 137 - return rule_name.to_owned(); [INFO] [stdout] 137 + rule_name.to_owned() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `map(..).flatten()` on `Option` [INFO] [stdout] --> src/rule_context.rs:223:14 [INFO] [stdout] | [INFO] [stdout] 223 | .map(Weak::upgrade) [INFO] [stdout] | ______________^ [INFO] [stdout] 224 | | .flatten() [INFO] [stdout] | |______________________^ help: try replacing `map` with `and_then` and remove the `.flatten()`: `and_then(Weak::upgrade)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_flatten [INFO] [stdout] = note: `#[warn(clippy::map_flatten)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should use the `starts_with` method [INFO] [stdout] --> src/vocabulary.rs:64:47 [INFO] [stdout] | [INFO] [stdout] 64 | Some(tn) if !tn.is_empty() && tn.chars().next().unwrap() == '\'' => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: like this: `tn.starts_with('\'')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#chars_next_cmp [INFO] [stdout] = note: `#[warn(clippy::chars_next_cmp)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/vocabulary.rs:115:18 [INFO] [stdout] | [INFO] [stdout] 115 | .map(|x| Borrowed(x)) [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `Borrowed` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:184:5 [INFO] [stdout] | [INFO] [stdout] 184 | fn coerce_rc(from: Rc) -> Rc; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | #![warn(missing_docs)] // warn if there is missing docs [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:185:5 [INFO] [stdout] | [INFO] [stdout] 185 | fn coerce_box(from: Box) -> Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:186:5 [INFO] [stdout] | [INFO] [stdout] 186 | fn coerce_ref(from: &T) -> &Self; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | fn coerce_mut(from: &mut T) -> &mut Self; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:220:5 [INFO] [stdout] | [INFO] [stdout] 220 | fn coerce_rc_to(self: Rc) -> Rc; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | fn coerce_box_to(self: Box) -> Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:222:5 [INFO] [stdout] | [INFO] [stdout] 222 | fn coerce_ref_to(self: &Self) -> &T; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:223:5 [INFO] [stdout] | [INFO] [stdout] 223 | fn coerce_mut_to(self: &mut Self) -> &mut T; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> tests/perf.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvlexer.rs:37:27 [INFO] [stdout] | [INFO] [stdout] 37 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] = note: `#[warn(clippy::redundant_static_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvlexer.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | pub const modeNames: [&'static str; 1] = ["DEFAULT_MODE"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvlexer.rs:41:24 [INFO] [stdout] | [INFO] [stdout] 41 | pub const ruleNames: [&'static str; 6] = ["T__0", "T__1", "T__2", "WS", "TEXT", "STRING"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a trait [INFO] [stdout] --> src/tree.rs:248:1 [INFO] [stdout] | [INFO] [stdout] 248 | pub trait ParseTreeVisitorCompat<'input>: VisitChildren<'input, Self::Node> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated type [INFO] [stdout] --> src/tree.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | type Node: ParserNodeType<'input>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated type [INFO] [stdout] --> src/tree.rs:250:5 [INFO] [stdout] | [INFO] [stdout] 250 | type Return: Default; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | fn visit(&mut self, node: &>::Type) -> Self::Return { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:278:5 [INFO] [stdout] | [INFO] [stdout] 278 | / fn visit_children( [INFO] [stdout] 279 | | &mut self, [INFO] [stdout] 280 | | node: &>::Type, [INFO] [stdout] 281 | | ) -> Self::Return { [INFO] [stdout] | |_____________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:294:5 [INFO] [stdout] | [INFO] [stdout] 294 | fn aggregate_results(&self, aggregate: Self::Return, next: Self::Return) -> Self::Return { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:298:5 [INFO] [stdout] | [INFO] [stdout] 298 | / fn should_visit_next_child( [INFO] [stdout] 299 | | &self, [INFO] [stdout] 300 | | node: &>::Type, [INFO] [stdout] 301 | | current: &Self::Return, [INFO] [stdout] 302 | | ) -> bool { [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/tree.rs:359:5 [INFO] [stdout] | [INFO] [stdout] 359 | fn visit_node(&mut self, node: &Node::Type); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type does not implement `std::fmt::Debug`; consider adding `#[derive(Debug)]` or a manual implementation [INFO] [stdout] --> src/lexer.rs:78:1 [INFO] [stdout] | [INFO] [stdout] 78 | / pub struct BaseLexer< [INFO] [stdout] 79 | | 'input, [INFO] [stdout] 80 | | T: LexerRecog<'input, Self> + 'static, [INFO] [stdout] 81 | | Input: CharStream, [INFO] [stdout] ... | [INFO] [stdout] 110 | | pub text: Option<::Owned>, [INFO] [stdout] 111 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | #![warn(missing_debug_implementations)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvlexer.rs:195:24 [INFO] [stdout] | [INFO] [stdout] 195 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvparser.rs:52:24 [INFO] [stdout] | [INFO] [stdout] 52 | pub const ruleNames: [&'static str; 4] = ["csvFile", "hdr", "row", "field"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type does not implement `std::fmt::Debug`; consider adding `#[derive(Debug)]` or a manual implementation [INFO] [stdout] --> src/parser.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / pub struct BaseParser< [INFO] [stdout] 110 | | 'input, [INFO] [stdout] 111 | | Ext, //: 'static, //: ParserRecog<'input, Self> + 'static, // user provided behavior, such as semantic predicates [INFO] [stdout] 112 | | I: TokenStream<'input>, // input stream [INFO] [stdout] ... | [INFO] [stdout] 151 | | pd: PhantomData &'input str>, [INFO] [stdout] 152 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvparser.rs:770:24 [INFO] [stdout] | [INFO] [stdout] 770 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorbasiclexer.rs:32:27 [INFO] [stdout] | [INFO] [stdout] 32 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorbasiclexer.rs:34:24 [INFO] [stdout] | [INFO] [stdout] 34 | pub const modeNames: [&'static str; 1] = ["DEFAULT_MODE"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorbasiclexer.rs:36:24 [INFO] [stdout] | [INFO] [stdout] 36 | pub const ruleNames: [&'static str; 1] = ["A"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorbasiclexer.rs:187:24 [INFO] [stdout] | [INFO] [stdout] 187 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorbasicparser.rs:44:24 [INFO] [stdout] | [INFO] [stdout] 44 | pub const ruleNames: [&'static str; 1] = ["s"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorbasicparser.rs:363:24 [INFO] [stdout] | [INFO] [stdout] 363 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:37:27 [INFO] [stdout] | [INFO] [stdout] 37 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | pub const modeNames: [&'static str; 1] = ["DEFAULT_MODE"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:41:24 [INFO] [stdout] | [INFO] [stdout] 41 | pub const ruleNames: [&'static str; 6] = ["INT", "MUL", "DIV", "ADD", "SUB", "WS"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:205:24 [INFO] [stdout] | [INFO] [stdout] 205 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:50:24 [INFO] [stdout] | [INFO] [stdout] 50 | pub const ruleNames: [&'static str; 2] = ["s", "expr"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:915:24 [INFO] [stdout] | [INFO] [stdout] 915 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ParseTreeVisitorCompat`, `ParseTreeVisitor`, `ParseTreeWalker`, `Tree`, `VisitChildren`, and `Visitable` [INFO] [stdout] --> tests/general_tests.rs:23:39 [INFO] [stdout] | [INFO] [stdout] 23 | ParseTree, ParseTreeListener, ParseTreeVisitor, ParseTreeVisitorCompat, ParseTreeWalker, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] 24 | TerminalNode, Tree, VisitChildren, Visitable, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CsvFileContext`, `HdrContext`, and `RowContext` [INFO] [stdout] --> tests/general_tests.rs:36:49 [INFO] [stdout] | [INFO] [stdout] 36 | CSVParserContext, CSVParserContextType, CsvFileContext, HdrContext, RowContext, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::gen::csvvisitor::CSVVisitor` [INFO] [stdout] --> tests/general_tests.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | use crate::gen::csvvisitor::CSVVisitor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvlexer.rs:37:27 [INFO] [stdout] | [INFO] [stdout] 37 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] = note: `#[warn(clippy::redundant_static_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvlexer.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | pub const modeNames: [&'static str; 1] = ["DEFAULT_MODE"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvlexer.rs:41:24 [INFO] [stdout] | [INFO] [stdout] 41 | pub const ruleNames: [&'static str; 6] = ["T__0", "T__1", "T__2", "WS", "TEXT", "STRING"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvlexer.rs:195:24 [INFO] [stdout] | [INFO] [stdout] 195 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvparser.rs:52:24 [INFO] [stdout] | [INFO] [stdout] 52 | pub const ruleNames: [&'static str; 4] = ["csvFile", "hdr", "row", "field"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/csvparser.rs:770:24 [INFO] [stdout] | [INFO] [stdout] 770 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/referencetoatnlexer.rs:34:27 [INFO] [stdout] | [INFO] [stdout] 34 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/referencetoatnlexer.rs:36:24 [INFO] [stdout] | [INFO] [stdout] 36 | pub const modeNames: [&'static str; 1] = ["DEFAULT_MODE"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/referencetoatnlexer.rs:38:24 [INFO] [stdout] | [INFO] [stdout] 38 | pub const ruleNames: [&'static str; 3] = ["ID", "ATN", "WS"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/referencetoatnlexer.rs:190:24 [INFO] [stdout] | [INFO] [stdout] 190 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/referencetoatnparser.rs:44:24 [INFO] [stdout] | [INFO] [stdout] 44 | pub const ruleNames: [&'static str; 1] = ["a"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/referencetoatnparser.rs:405:24 [INFO] [stdout] | [INFO] [stdout] 405 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/simplelrlexer.rs:33:27 [INFO] [stdout] | [INFO] [stdout] 33 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/simplelrlexer.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | pub const modeNames: [&'static str; 1] = ["DEFAULT_MODE"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/simplelrlexer.rs:37:24 [INFO] [stdout] | [INFO] [stdout] 37 | pub const ruleNames: [&'static str; 2] = ["ID", "WS"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/simplelrlexer.rs:184:24 [INFO] [stdout] | [INFO] [stdout] 184 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/simplelrparser.rs:44:24 [INFO] [stdout] | [INFO] [stdout] 44 | pub const ruleNames: [&'static str; 2] = ["s", "a"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/simplelrparser.rs:504:24 [INFO] [stdout] | [INFO] [stdout] 504 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:37:27 [INFO] [stdout] | [INFO] [stdout] 37 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | pub const modeNames: [&'static str; 1] = ["DEFAULT_MODE"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:41:24 [INFO] [stdout] | [INFO] [stdout] 41 | pub const ruleNames: [&'static str; 6] = ["INT", "MUL", "DIV", "ADD", "SUB", "WS"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:205:24 [INFO] [stdout] | [INFO] [stdout] 205 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:50:24 [INFO] [stdout] | [INFO] [stdout] 50 | pub const ruleNames: [&'static str; 2] = ["s", "expr"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:915:24 [INFO] [stdout] | [INFO] [stdout] 915 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/xmllexer.rs:51:27 [INFO] [stdout] | [INFO] [stdout] 51 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/xmllexer.rs:53:24 [INFO] [stdout] | [INFO] [stdout] 53 | pub const modeNames: [&'static str; 3] = ["DEFAULT_MODE", "INSIDE", "PROC_INSTR"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/xmllexer.rs:55:24 [INFO] [stdout] | [INFO] [stdout] 55 | pub const ruleNames: [&'static str; 24] = [ [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/xmllexer.rs:306:24 [INFO] [stdout] | [INFO] [stdout] 306 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/labelslexer.rs:40:27 [INFO] [stdout] | [INFO] [stdout] 40 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/labelslexer.rs:42:24 [INFO] [stdout] | [INFO] [stdout] 42 | pub const modeNames: [&'static str; 1] = ["DEFAULT_MODE"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/labelslexer.rs:44:24 [INFO] [stdout] | [INFO] [stdout] 44 | pub const ruleNames: [&'static str; 9] = [ [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/labelslexer.rs:212:24 [INFO] [stdout] | [INFO] [stdout] 212 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/labelsparser.rs:51:24 [INFO] [stdout] | [INFO] [stdout] 51 | pub const ruleNames: [&'static str; 2] = ["s", "e"]; [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constants have by default a `'static` lifetime [INFO] [stdout] --> tests/gen/labelsparser.rs:1441:24 [INFO] [stdout] | [INFO] [stdout] 1441 | const _serializedATN: &'static str = [INFO] [stdout] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/visitors_tests.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let mut lexer = VisitorBasicLexer::new(InputStream::new("A".into())); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/visitors_tests.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let mut lexer = VisitorBasicLexer::new(InputStream::new("".into())); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/visitors_tests.rs:107:13 [INFO] [stdout] | [INFO] [stdout] 107 | let mut lexer = VisitorBasicLexer::new(InputStream::new("A".into())); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> tests/visitors_tests.rs:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | node: &>::Type, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/visitors_tests.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | let mut lexer = VisitorBasicLexer::new(InputStream::new("A".into())); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> tests/visitors_tests.rs:179:17 [INFO] [stdout] | [INFO] [stdout] 179 | node: &>::Type, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current` [INFO] [stdout] --> tests/visitors_tests.rs:180:17 [INFO] [stdout] | [INFO] [stdout] 180 | current: &Self::Return, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aggregate` [INFO] [stdout] --> tests/visitors_tests.rs:206:17 [INFO] [stdout] | [INFO] [stdout] 206 | aggregate: Self::Return, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_aggregate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `next` [INFO] [stdout] --> tests/visitors_tests.rs:207:17 [INFO] [stdout] | [INFO] [stdout] 207 | next: Self::Return, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_next` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TestVisitorUnit` is never constructed [INFO] [stdout] --> tests/visitors_tests.rs:140:16 [INFO] [stdout] | [INFO] [stdout] 140 | struct TestVisitorUnit(String); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> tests/gen/csvlexer.rs:37:40 [INFO] [stdout] | [INFO] [stdout] 37 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | ^^^^^ help: consider reducing it to: `2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `Arc` that is not `Send` and `Sync` [INFO] [stdout] --> tests/gen/csvparser.rs:117:27 [INFO] [stdout] | [INFO] [stdout] 117 | let interpreter = Arc::new(ParserATNSimulator::new( [INFO] [stdout] | ___________________________^ [INFO] [stdout] 118 | | _ATN.clone(), [INFO] [stdout] 119 | | _decision_to_DFA.clone(), [INFO] [stdout] 120 | | _shared_context_cache.clone(), [INFO] [stdout] 121 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: `Arc` is not `Send` and `Sync` as `ParserATNSimulator` is not `Sync` [INFO] [stdout] = help: if the `Arc` will not be used across threads replace it with an `Rc` [INFO] [stdout] = help: otherwise make `ParserATNSimulator` `Send` and `Sync` or consider a wrapper type such as `Mutex` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#arc_with_non_send_sync [INFO] [stdout] = note: `#[warn(clippy::arc_with_non_send_sync)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/csvparser.rs:326:34 [INFO] [stdout] | [INFO] [stdout] 326 | pub fn csvFile(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] = note: `#[warn(clippy::result_large_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/csvparser.rs:333:46 [INFO] [stdout] | [INFO] [stdout] 333 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 334 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 335 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 368 | | Ok(()) [INFO] [stdout] 369 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/csvparser.rs:454:30 [INFO] [stdout] | [INFO] [stdout] 454 | pub fn hdr(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/csvparser.rs:460:46 [INFO] [stdout] | [INFO] [stdout] 460 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 461 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 462 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 468 | | Ok(()) [INFO] [stdout] 469 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/csvparser.rs:560:30 [INFO] [stdout] | [INFO] [stdout] 560 | pub fn row(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/csvparser.rs:567:46 [INFO] [stdout] | [INFO] [stdout] 567 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 568 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 569 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 606 | | Ok(()) [INFO] [stdout] 607 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/csvparser.rs:702:32 [INFO] [stdout] | [INFO] [stdout] 702 | pub fn field(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/csvparser.rs:708:46 [INFO] [stdout] | [INFO] [stdout] 708 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 709 | | recog.base.set_state(32); [INFO] [stdout] 710 | | recog.err_handler.sync(&mut recog.base)?; [INFO] [stdout] 711 | | match recog.base.input.la(1) { [INFO] [stdout] ... | [INFO] [stdout] 740 | | Ok(()) [INFO] [stdout] 741 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> tests/gen/visitorbasiclexer.rs:32:40 [INFO] [stdout] | [INFO] [stdout] 32 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | ^^^^^ help: consider reducing it to: `2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `Arc` that is not `Send` and `Sync` [INFO] [stdout] --> tests/gen/visitorbasicparser.rs:103:27 [INFO] [stdout] | [INFO] [stdout] 103 | let interpreter = Arc::new(ParserATNSimulator::new( [INFO] [stdout] | ___________________________^ [INFO] [stdout] 104 | | _ATN.clone(), [INFO] [stdout] 105 | | _decision_to_DFA.clone(), [INFO] [stdout] 106 | | _shared_context_cache.clone(), [INFO] [stdout] 107 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: `Arc` is not `Send` and `Sync` as `ParserATNSimulator` is not `Sync` [INFO] [stdout] = help: if the `Arc` will not be used across threads replace it with an `Rc` [INFO] [stdout] = help: otherwise make `ParserATNSimulator` `Send` and `Sync` or consider a wrapper type such as `Mutex` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#arc_with_non_send_sync [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/visitorbasicparser.rs:317:28 [INFO] [stdout] | [INFO] [stdout] 317 | pub fn s(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/visitorbasicparser.rs:323:46 [INFO] [stdout] | [INFO] [stdout] 323 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 324 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 325 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 333 | | Ok(()) [INFO] [stdout] 334 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:37:40 [INFO] [stdout] | [INFO] [stdout] 37 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | ^^^^^ help: consider reducing it to: `2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `Arc` that is not `Send` and `Sync` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:120:27 [INFO] [stdout] | [INFO] [stdout] 120 | let interpreter = Arc::new(ParserATNSimulator::new( [INFO] [stdout] | ___________________________^ [INFO] [stdout] 121 | | _ATN.clone(), [INFO] [stdout] 122 | | _decision_to_DFA.clone(), [INFO] [stdout] 123 | | _shared_context_cache.clone(), [INFO] [stdout] 124 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: `Arc` is not `Send` and `Sync` as `ParserATNSimulator` is not `Sync` [INFO] [stdout] = help: if the `Arc` will not be used across threads replace it with an `Rc` [INFO] [stdout] = help: otherwise make `ParserATNSimulator` `Send` and `Sync` or consider a wrapper type such as `Mutex` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#arc_with_non_send_sync [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:362:28 [INFO] [stdout] | [INFO] [stdout] 362 | pub fn s(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:368:46 [INFO] [stdout] | [INFO] [stdout] 368 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 369 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 370 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 379 | | Ok(()) [INFO] [stdout] 380 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:459:5 [INFO] [stdout] | [INFO] [stdout] 459 | / fn new( [INFO] [stdout] 460 | | parent: Option + 'input>>, [INFO] [stdout] 461 | | invoking_state: isize, [INFO] [stdout] 462 | | ) -> Rc> { [INFO] [stdout] ... | [INFO] [stdout] 469 | | )) [INFO] [stdout] 470 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] = note: `#[warn(clippy::new_ret_no_self)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:564:5 [INFO] [stdout] | [INFO] [stdout] 564 | / fn new(ctx: &dyn ExprContextAttrs<'input>) -> Rc> { [INFO] [stdout] 565 | | Rc::new(ExprContextAll::AddContext( [INFO] [stdout] 566 | | BaseParserRuleContext::copy_from( [INFO] [stdout] 567 | | ctx, [INFO] [stdout] ... | [INFO] [stdout] 573 | | )) [INFO] [stdout] 574 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:641:5 [INFO] [stdout] | [INFO] [stdout] 641 | / fn new(ctx: &dyn ExprContextAttrs<'input>) -> Rc> { [INFO] [stdout] 642 | | Rc::new(ExprContextAll::NumberContext( [INFO] [stdout] 643 | | BaseParserRuleContext::copy_from( [INFO] [stdout] 644 | | ctx, [INFO] [stdout] ... | [INFO] [stdout] 650 | | )) [INFO] [stdout] 651 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:738:5 [INFO] [stdout] | [INFO] [stdout] 738 | / fn new(ctx: &dyn ExprContextAttrs<'input>) -> Rc> { [INFO] [stdout] 739 | | Rc::new(ExprContextAll::MultiplyContext( [INFO] [stdout] 740 | | BaseParserRuleContext::copy_from( [INFO] [stdout] 741 | | ctx, [INFO] [stdout] ... | [INFO] [stdout] 747 | | )) [INFO] [stdout] 748 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:756:31 [INFO] [stdout] | [INFO] [stdout] 756 | pub fn expr(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:760:42 [INFO] [stdout] | [INFO] [stdout] 760 | fn expr_rec(&mut self, _p: isize) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:772:46 [INFO] [stdout] | [INFO] [stdout] 772 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 773 | | let mut _alt: isize; [INFO] [stdout] 774 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 775 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 885 | | Ok(()) [INFO] [stdout] 886 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: omit braces around single expression condition [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:824:44 [INFO] [stdout] | [INFO] [stdout] 824 | ... if { !(_la == MUL || _la == DIV) } { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `!(_la == MUL || _la == DIV)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blocks_in_conditions [INFO] [stdout] = note: `#[warn(clippy::blocks_in_conditions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: omit braces around single expression condition [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:861:44 [INFO] [stdout] | [INFO] [stdout] 861 | ... if { !(_la == ADD || _la == SUB) } { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `!(_la == ADD || _la == SUB)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blocks_in_conditions [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/visitors_tests.rs:34:65 [INFO] [stdout] | [INFO] [stdout] 34 | let mut lexer = VisitorBasicLexer::new(InputStream::new("A".into())); [INFO] [stdout] | ^^^^^^^^^^ help: consider removing `.into()`: `"A"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/visitors_tests.rs:71:65 [INFO] [stdout] | [INFO] [stdout] 71 | let mut lexer = VisitorBasicLexer::new(InputStream::new("".into())); [INFO] [stdout] | ^^^^^^^^^ help: consider removing `.into()`: `""` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/visitors_tests.rs:107:65 [INFO] [stdout] | [INFO] [stdout] 107 | let mut lexer = VisitorBasicLexer::new(InputStream::new("A".into())); [INFO] [stdout] | ^^^^^^^^^^ help: consider removing `.into()`: `"A"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/visitors_tests.rs:158:65 [INFO] [stdout] | [INFO] [stdout] 158 | let mut lexer = VisitorBasicLexer::new(InputStream::new("A".into())); [INFO] [stdout] | ^^^^^^^^^^ help: consider removing `.into()`: `"A"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/visitors_tests.rs:243:65 [INFO] [stdout] | [INFO] [stdout] 243 | let mut _lexer = VisitorCalcLexer::new(InputStream::new("2 + 8 / 2".into())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `"2 + 8 / 2"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/visitors_tests.rs:296:67 [INFO] [stdout] | [INFO] [stdout] 296 | CSVLexer::new_with_token_factory(InputStream::new("h1,h2\nd1,d2\nd3\n".into()), tf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `"h1,h2\nd1,d2\nd3\n"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/visitors_tests.rs:370:67 [INFO] [stdout] | [INFO] [stdout] 370 | CSVLexer::new_with_token_factory(InputStream::new("h1,h2\nd1,d2\nd3\n".into()), tf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `"h1,h2\nd1,d2\nd3\n"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_should_not_visit_EOF` should have a snake case name [INFO] [stdout] --> tests/visitors_tests.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | fn test_should_not_visit_EOF() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `test_should_not_visit_eof` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> tests/general_tests.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> tests/gen/csvlexer.rs:37:40 [INFO] [stdout] | [INFO] [stdout] 37 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | ^^^^^ help: consider reducing it to: `2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `Arc` that is not `Send` and `Sync` [INFO] [stdout] --> tests/gen/csvparser.rs:117:27 [INFO] [stdout] | [INFO] [stdout] 117 | let interpreter = Arc::new(ParserATNSimulator::new( [INFO] [stdout] | ___________________________^ [INFO] [stdout] 118 | | _ATN.clone(), [INFO] [stdout] 119 | | _decision_to_DFA.clone(), [INFO] [stdout] 120 | | _shared_context_cache.clone(), [INFO] [stdout] 121 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: `Arc` is not `Send` and `Sync` as `ParserATNSimulator` is not `Sync` [INFO] [stdout] = help: if the `Arc` will not be used across threads replace it with an `Rc` [INFO] [stdout] = help: otherwise make `ParserATNSimulator` `Send` and `Sync` or consider a wrapper type such as `Mutex` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#arc_with_non_send_sync [INFO] [stdout] = note: `#[warn(clippy::arc_with_non_send_sync)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/csvparser.rs:326:34 [INFO] [stdout] | [INFO] [stdout] 326 | pub fn csvFile(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] = note: `#[warn(clippy::result_large_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/csvparser.rs:333:46 [INFO] [stdout] | [INFO] [stdout] 333 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 334 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 335 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 368 | | Ok(()) [INFO] [stdout] 369 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/csvparser.rs:454:30 [INFO] [stdout] | [INFO] [stdout] 454 | pub fn hdr(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/csvparser.rs:460:46 [INFO] [stdout] | [INFO] [stdout] 460 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 461 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 462 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 468 | | Ok(()) [INFO] [stdout] 469 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/csvparser.rs:560:30 [INFO] [stdout] | [INFO] [stdout] 560 | pub fn row(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/csvparser.rs:567:46 [INFO] [stdout] | [INFO] [stdout] 567 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 568 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 569 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 606 | | Ok(()) [INFO] [stdout] 607 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/csvparser.rs:702:32 [INFO] [stdout] | [INFO] [stdout] 702 | pub fn field(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/csvparser.rs:708:46 [INFO] [stdout] | [INFO] [stdout] 708 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 709 | | recog.base.set_state(32); [INFO] [stdout] 710 | | recog.err_handler.sync(&mut recog.base)?; [INFO] [stdout] 711 | | match recog.base.input.la(1) { [INFO] [stdout] ... | [INFO] [stdout] 740 | | Ok(()) [INFO] [stdout] 741 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> tests/gen/referencetoatnlexer.rs:34:40 [INFO] [stdout] | [INFO] [stdout] 34 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | ^^^^^ help: consider reducing it to: `2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `Arc` that is not `Send` and `Sync` [INFO] [stdout] --> tests/gen/referencetoatnparser.rs:104:27 [INFO] [stdout] | [INFO] [stdout] 104 | let interpreter = Arc::new(ParserATNSimulator::new( [INFO] [stdout] | ___________________________^ [INFO] [stdout] 105 | | _ATN.clone(), [INFO] [stdout] 106 | | _decision_to_DFA.clone(), [INFO] [stdout] 107 | | _shared_context_cache.clone(), [INFO] [stdout] 108 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: `Arc` is not `Send` and `Sync` as `ParserATNSimulator` is not `Sync` [INFO] [stdout] = help: if the `Arc` will not be used across threads replace it with an `Rc` [INFO] [stdout] = help: otherwise make `ParserATNSimulator` `Send` and `Sync` or consider a wrapper type such as `Mutex` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#arc_with_non_send_sync [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/referencetoatnparser.rs:315:28 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn a(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/referencetoatnparser.rs:322:46 [INFO] [stdout] | [INFO] [stdout] 322 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 323 | | let mut _alt: isize; [INFO] [stdout] 324 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 325 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 375 | | Ok(()) [INFO] [stdout] 376 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: omit braces around single expression condition [INFO] [stdout] --> tests/gen/referencetoatnparser.rs:336:36 [INFO] [stdout] | [INFO] [stdout] 336 | ... if { !(_la == ID || _la == ATN) } { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `!(_la == ID || _la == ATN)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blocks_in_conditions [INFO] [stdout] = note: `#[warn(clippy::blocks_in_conditions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> tests/gen/simplelrlexer.rs:33:40 [INFO] [stdout] | [INFO] [stdout] 33 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | ^^^^^ help: consider reducing it to: `2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `Arc` that is not `Send` and `Sync` [INFO] [stdout] --> tests/gen/simplelrparser.rs:99:27 [INFO] [stdout] | [INFO] [stdout] 99 | let interpreter = Arc::new(ParserATNSimulator::new( [INFO] [stdout] | ___________________________^ [INFO] [stdout] 100 | | _ATN.clone(), [INFO] [stdout] 101 | | _decision_to_DFA.clone(), [INFO] [stdout] 102 | | _shared_context_cache.clone(), [INFO] [stdout] 103 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: `Arc` is not `Send` and `Sync` as `ParserATNSimulator` is not `Sync` [INFO] [stdout] = help: if the `Arc` will not be used across threads replace it with an `Rc` [INFO] [stdout] = help: otherwise make `ParserATNSimulator` `Send` and `Sync` or consider a wrapper type such as `Mutex` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#arc_with_non_send_sync [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/simplelrparser.rs:311:28 [INFO] [stdout] | [INFO] [stdout] 311 | pub fn s(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/simplelrparser.rs:317:46 [INFO] [stdout] | [INFO] [stdout] 317 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 318 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 319 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 328 | | Ok(()) [INFO] [stdout] 329 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/simplelrparser.rs:416:28 [INFO] [stdout] | [INFO] [stdout] 416 | pub fn a(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/simplelrparser.rs:420:39 [INFO] [stdout] | [INFO] [stdout] 420 | fn a_rec(&mut self, _p: isize) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/simplelrparser.rs:431:46 [INFO] [stdout] | [INFO] [stdout] 431 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 432 | | let mut _alt: isize; [INFO] [stdout] 433 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 434 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 474 | | Ok(()) [INFO] [stdout] 475 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> tests/gen/visitorcalclexer.rs:37:40 [INFO] [stdout] | [INFO] [stdout] 37 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | ^^^^^ help: consider reducing it to: `2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `Arc` that is not `Send` and `Sync` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:120:27 [INFO] [stdout] | [INFO] [stdout] 120 | let interpreter = Arc::new(ParserATNSimulator::new( [INFO] [stdout] | ___________________________^ [INFO] [stdout] 121 | | _ATN.clone(), [INFO] [stdout] 122 | | _decision_to_DFA.clone(), [INFO] [stdout] 123 | | _shared_context_cache.clone(), [INFO] [stdout] 124 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: `Arc` is not `Send` and `Sync` as `ParserATNSimulator` is not `Sync` [INFO] [stdout] = help: if the `Arc` will not be used across threads replace it with an `Rc` [INFO] [stdout] = help: otherwise make `ParserATNSimulator` `Send` and `Sync` or consider a wrapper type such as `Mutex` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#arc_with_non_send_sync [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:362:28 [INFO] [stdout] | [INFO] [stdout] 362 | pub fn s(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:368:46 [INFO] [stdout] | [INFO] [stdout] 368 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 369 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 370 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 379 | | Ok(()) [INFO] [stdout] 380 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:459:5 [INFO] [stdout] | [INFO] [stdout] 459 | / fn new( [INFO] [stdout] 460 | | parent: Option + 'input>>, [INFO] [stdout] 461 | | invoking_state: isize, [INFO] [stdout] 462 | | ) -> Rc> { [INFO] [stdout] ... | [INFO] [stdout] 469 | | )) [INFO] [stdout] 470 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] = note: `#[warn(clippy::new_ret_no_self)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:564:5 [INFO] [stdout] | [INFO] [stdout] 564 | / fn new(ctx: &dyn ExprContextAttrs<'input>) -> Rc> { [INFO] [stdout] 565 | | Rc::new(ExprContextAll::AddContext( [INFO] [stdout] 566 | | BaseParserRuleContext::copy_from( [INFO] [stdout] 567 | | ctx, [INFO] [stdout] ... | [INFO] [stdout] 573 | | )) [INFO] [stdout] 574 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:641:5 [INFO] [stdout] | [INFO] [stdout] 641 | / fn new(ctx: &dyn ExprContextAttrs<'input>) -> Rc> { [INFO] [stdout] 642 | | Rc::new(ExprContextAll::NumberContext( [INFO] [stdout] 643 | | BaseParserRuleContext::copy_from( [INFO] [stdout] 644 | | ctx, [INFO] [stdout] ... | [INFO] [stdout] 650 | | )) [INFO] [stdout] 651 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:738:5 [INFO] [stdout] | [INFO] [stdout] 738 | / fn new(ctx: &dyn ExprContextAttrs<'input>) -> Rc> { [INFO] [stdout] 739 | | Rc::new(ExprContextAll::MultiplyContext( [INFO] [stdout] 740 | | BaseParserRuleContext::copy_from( [INFO] [stdout] 741 | | ctx, [INFO] [stdout] ... | [INFO] [stdout] 747 | | )) [INFO] [stdout] 748 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:756:31 [INFO] [stdout] | [INFO] [stdout] 756 | pub fn expr(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:760:42 [INFO] [stdout] | [INFO] [stdout] 760 | fn expr_rec(&mut self, _p: isize) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:772:46 [INFO] [stdout] | [INFO] [stdout] 772 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 773 | | let mut _alt: isize; [INFO] [stdout] 774 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 775 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 885 | | Ok(()) [INFO] [stdout] 886 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: omit braces around single expression condition [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:824:44 [INFO] [stdout] | [INFO] [stdout] 824 | ... if { !(_la == MUL || _la == DIV) } { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `!(_la == MUL || _la == DIV)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blocks_in_conditions [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: omit braces around single expression condition [INFO] [stdout] --> tests/gen/visitorcalcparser.rs:861:44 [INFO] [stdout] | [INFO] [stdout] 861 | ... if { !(_la == ADD || _la == SUB) } { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `!(_la == ADD || _la == SUB)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#blocks_in_conditions [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> tests/gen/xmllexer.rs:51:40 [INFO] [stdout] | [INFO] [stdout] 51 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | ^^^^^ help: consider reducing it to: `2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for an equality check. Consider using `if` [INFO] [stdout] --> tests/gen/xmllexer.rs:212:9 [INFO] [stdout] | [INFO] [stdout] 212 | / match rule_index { [INFO] [stdout] 213 | | 10 => XMLLexer::<'input>::CLOSE_action(None, action_index, recog), [INFO] [stdout] 214 | | _ => {} [INFO] [stdout] 215 | | } [INFO] [stdout] | |_________^ help: try: `if rule_index == 10 { XMLLexer::<'input>::CLOSE_action(None, action_index, recog) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for an equality check. Consider using `if` [INFO] [stdout] --> tests/gen/xmllexer.rs:236:9 [INFO] [stdout] | [INFO] [stdout] 236 | / match action_index { [INFO] [stdout] 237 | | 0 => { [INFO] [stdout] 238 | | recog.pop_mode(); [INFO] [stdout] ... | [INFO] [stdout] 241 | | _ => {} [INFO] [stdout] 242 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 236 ~ if action_index == 0 { [INFO] [stdout] 237 + recog.pop_mode(); [INFO] [stdout] 238 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/general_tests.rs:126:30 [INFO] [stdout] | [INFO] [stdout] 126 | InputStream::new("V123,V2\nd1,d222".into()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `"V123,V2\nd1,d222"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/general_tests.rs:187:63 [INFO] [stdout] | [INFO] [stdout] 187 | CSVLexer::new_with_token_factory(InputStream::new("V123,V2\nd1,d2\n".into()), &tf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `"V123,V2\nd1,d2\n"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/general_tests.rs:263:62 [INFO] [stdout] | [INFO] [stdout] 263 | let mut _lexer = SimpleLRLexer::new(InputStream::new("x y z".into())); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider removing `.into()`: `"x y z"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/general_tests.rs:274:62 [INFO] [stdout] | [INFO] [stdout] 274 | let mut _lexer = SimpleLRLexer::new(InputStream::new("x y z".into())); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider removing `.into()`: `"x y z"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `&str` [INFO] [stdout] --> tests/general_tests.rs:306:62 [INFO] [stdout] | [INFO] [stdout] 306 | let mut _lexer = SimpleLRLexer::new(InputStream::new("x y z".into())); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider removing `.into()`: `"x y z"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> tests/gen/labelslexer.rs:40:40 [INFO] [stdout] | [INFO] [stdout] 40 | pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"]; [INFO] [stdout] | ^^^^^ help: consider reducing it to: `2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `Arc` that is not `Send` and `Sync` [INFO] [stdout] --> tests/gen/labelsparser.rs:125:27 [INFO] [stdout] | [INFO] [stdout] 125 | let interpreter = Arc::new(ParserATNSimulator::new( [INFO] [stdout] | ___________________________^ [INFO] [stdout] 126 | | _ATN.clone(), [INFO] [stdout] 127 | | _decision_to_DFA.clone(), [INFO] [stdout] 128 | | _shared_context_cache.clone(), [INFO] [stdout] 129 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: `Arc` is not `Send` and `Sync` as `ParserATNSimulator` is not `Sync` [INFO] [stdout] = help: if the `Arc` will not be used across threads replace it with an `Rc` [INFO] [stdout] = help: otherwise make `ParserATNSimulator` `Send` and `Sync` or consider a wrapper type such as `Mutex` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#arc_with_non_send_sync [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/labelsparser.rs:344:28 [INFO] [stdout] | [INFO] [stdout] 344 | pub fn s(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/labelsparser.rs:350:46 [INFO] [stdout] | [INFO] [stdout] 350 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 351 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 352 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 359 | | Ok(()) [INFO] [stdout] 360 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/labelsparser.rs:441:5 [INFO] [stdout] | [INFO] [stdout] 441 | / fn new( [INFO] [stdout] 442 | | parent: Option + 'input>>, [INFO] [stdout] 443 | | invoking_state: isize, [INFO] [stdout] 444 | | ) -> Rc> { [INFO] [stdout] ... | [INFO] [stdout] 452 | | ))) [INFO] [stdout] 453 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/labelsparser.rs:532:5 [INFO] [stdout] | [INFO] [stdout] 532 | / fn new(ctx: &dyn EContextAttrs<'input>) -> Rc> { [INFO] [stdout] 533 | | Rc::new(EContextAll::AddContext(BaseParserRuleContext::copy_from( [INFO] [stdout] 534 | | ctx, [INFO] [stdout] 535 | | AddContextExt { [INFO] [stdout] ... | [INFO] [stdout] 541 | | ))) [INFO] [stdout] 542 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/labelsparser.rs:598:5 [INFO] [stdout] | [INFO] [stdout] 598 | / fn new(ctx: &dyn EContextAttrs<'input>) -> Rc> { [INFO] [stdout] 599 | | Rc::new(EContextAll::ParensContext( [INFO] [stdout] 600 | | BaseParserRuleContext::copy_from( [INFO] [stdout] 601 | | ctx, [INFO] [stdout] ... | [INFO] [stdout] 608 | | )) [INFO] [stdout] 609 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/labelsparser.rs:673:5 [INFO] [stdout] | [INFO] [stdout] 673 | / fn new(ctx: &dyn EContextAttrs<'input>) -> Rc> { [INFO] [stdout] 674 | | Rc::new(EContextAll::MultContext(BaseParserRuleContext::copy_from( [INFO] [stdout] 675 | | ctx, [INFO] [stdout] 676 | | MultContextExt { [INFO] [stdout] ... | [INFO] [stdout] 683 | | ))) [INFO] [stdout] 684 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/labelsparser.rs:740:5 [INFO] [stdout] | [INFO] [stdout] 740 | / fn new(ctx: &dyn EContextAttrs<'input>) -> Rc> { [INFO] [stdout] 741 | | Rc::new(EContextAll::DecContext(BaseParserRuleContext::copy_from( [INFO] [stdout] 742 | | ctx, [INFO] [stdout] 743 | | DecContextExt { [INFO] [stdout] ... | [INFO] [stdout] 748 | | ))) [INFO] [stdout] 749 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/labelsparser.rs:807:5 [INFO] [stdout] | [INFO] [stdout] 807 | / fn new(ctx: &dyn EContextAttrs<'input>) -> Rc> { [INFO] [stdout] 808 | | Rc::new(EContextAll::AnIDContext(BaseParserRuleContext::copy_from( [INFO] [stdout] 809 | | ctx, [INFO] [stdout] 810 | | AnIDContextExt { [INFO] [stdout] ... | [INFO] [stdout] 815 | | ))) [INFO] [stdout] 816 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/labelsparser.rs:874:5 [INFO] [stdout] | [INFO] [stdout] 874 | / fn new(ctx: &dyn EContextAttrs<'input>) -> Rc> { [INFO] [stdout] 875 | | Rc::new(EContextAll::AnIntContext(BaseParserRuleContext::copy_from( [INFO] [stdout] 876 | | ctx, [INFO] [stdout] 877 | | AnIntContextExt { [INFO] [stdout] ... | [INFO] [stdout] 882 | | ))) [INFO] [stdout] 883 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> tests/gen/labelsparser.rs:939:5 [INFO] [stdout] | [INFO] [stdout] 939 | / fn new(ctx: &dyn EContextAttrs<'input>) -> Rc> { [INFO] [stdout] 940 | | Rc::new(EContextAll::IncContext(BaseParserRuleContext::copy_from( [INFO] [stdout] 941 | | ctx, [INFO] [stdout] 942 | | IncContextExt { [INFO] [stdout] ... | [INFO] [stdout] 947 | | ))) [INFO] [stdout] 948 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/labelsparser.rs:956:28 [INFO] [stdout] | [INFO] [stdout] 956 | pub fn e(&mut self) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this function is very large [INFO] [stdout] --> tests/gen/labelsparser.rs:960:39 [INFO] [stdout] | [INFO] [stdout] 960 | fn e_rec(&mut self, _p: isize) -> Result>, ANTLRError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `Err`-variant returned from this closure is very large [INFO] [stdout] --> tests/gen/labelsparser.rs:971:46 [INFO] [stdout] | [INFO] [stdout] 971 | let result: Result<(), ANTLRError> = (|| { [INFO] [stdout] | ______________________________________________^ [INFO] [stdout] 972 | | let mut _alt: isize; [INFO] [stdout] 973 | | //recog.base.enter_outer_alt(_localctx.clone(), 1); [INFO] [stdout] 974 | | recog.base.enter_outer_alt(None, 1); [INFO] [stdout] ... | [INFO] [stdout] 1411 | | Ok(()) [INFO] [stdout] 1412 | | })(); [INFO] [stdout] | |__________^ the `Err`-variant is at least 232 bytes [INFO] [stdout] | [INFO] [stdout] = help: try reducing the size of `antlr_rust::errors::ANTLRError`, for example by boxing large elements or replacing it with `Box` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.68s [INFO] running `Command { std: "docker" "inspect" "388733b4e77e366f595b26c36e9161d7bed85ea8af077ccc35c86adb0be7202e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "388733b4e77e366f595b26c36e9161d7bed85ea8af077ccc35c86adb0be7202e", kill_on_drop: false }` [INFO] [stdout] 388733b4e77e366f595b26c36e9161d7bed85ea8af077ccc35c86adb0be7202e