[INFO] cloning repository https://github.com/wend-xu/stone_rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/wend-xu/stone_rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwend-xu%2Fstone_rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwend-xu%2Fstone_rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 4912adc29164d9f9990223fde775b60b76571993 [INFO] checking wend-xu/stone_rs against master#4ecd70ddd1039a3954056c1071e40278048476fa for pr-137633 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwend-xu%2Fstone_rs" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/wend-xu/stone_rs on toolchain 4ecd70ddd1039a3954056c1071e40278048476fa [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4ecd70ddd1039a3954056c1071e40278048476fa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/wend-xu/stone_rs [INFO] finished tweaking git repo https://github.com/wend-xu/stone_rs [INFO] tweaked toml for git repo https://github.com/wend-xu/stone_rs written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/wend-xu/stone_rs already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4ecd70ddd1039a3954056c1071e40278048476fa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+4ecd70ddd1039a3954056c1071e40278048476fa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c5a86691eba841906b811f974b2656a74c98e6cad4c5e8aa54ab3dfcd3900f81 [INFO] running `Command { std: "docker" "start" "-a" "c5a86691eba841906b811f974b2656a74c98e6cad4c5e8aa54ab3dfcd3900f81", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c5a86691eba841906b811f974b2656a74c98e6cad4c5e8aa54ab3dfcd3900f81", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c5a86691eba841906b811f974b2656a74c98e6cad4c5e8aa54ab3dfcd3900f81", kill_on_drop: false }` [INFO] [stdout] c5a86691eba841906b811f974b2656a74c98e6cad4c5e8aa54ab3dfcd3900f81 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+4ecd70ddd1039a3954056c1071e40278048476fa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8fe089c31c5102328035d846b3f53c32f52c3d358e15ed044125d32e8676782c [INFO] running `Command { std: "docker" "start" "-a" "8fe089c31c5102328035d846b3f53c32f52c3d358e15ed044125d32e8676782c", kill_on_drop: false }` [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking regex-automata v0.4.8 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking stone_rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::lexer::lexer::Lexer` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::lexer::lexer::Lexer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::token::Token` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::token::Token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Debug` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Debug` [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:10:16 [INFO] [stdout] | [INFO] [stdout] 10 | use std::fmt::{Debug, Display, Formatter}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lexer::Lexer` [INFO] [stdout] --> src/lexer/mod.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use lexer::Lexer; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Leaf` [INFO] [stdout] --> src/tests/token_test.rs:4:43 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::parser::element::{Element, Leaf, Skip}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/tests/element_test.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::any::TypeId` [INFO] [stdout] --> src/util/dev_util.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::any::TypeId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `*` [INFO] [stdout] --> src/util/dev_util.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::parser::element::{*}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ast_leaf_default_eval_impl` [INFO] [stdout] --> src/ast/leaf/identifier_literal.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{ast_leaf_default_eval_impl, ast_leaf_default_impl, ast_leaf_default_new, ast_leaf_factory_default_impl}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Any` and `TypeId` [INFO] [stdout] --> src/ast/list/block_stmt.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::any::{Any, TypeId}; [INFO] [stdout] | ^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NullStmt` [INFO] [stdout] --> src/ast/list/block_stmt.rs:5:49 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::ast::list::null_stmt::{is_null_stmt, NullStmt}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Debug` [INFO] [stdout] --> src/ast/ast_list.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/parser/element.rs:124:13 [INFO] [stdout] | [INFO] [stdout] 124 | / ... /// parser 出现AstList则是factory构建ast节点的时候没有指定类型,实际上没有执行的功能 [INFO] [stdout] 125 | | ... /// 这种情况确实可以忽略,因为本身就是无法执行的,在ast树上也没意义 [INFO] [stdout] 126 | | ... /// [INFO] [stdout] 127 | | ... /// 按照BNF的语法定义,仅在 block中有 repeat ,定义为 {(";" | EOL) [ statement ]} "}" , [INFO] [stdout] ... | [INFO] [stdout] 131 | | ... /// [INFO] [stdout] 132 | | ... /// 故进入while 循环后的判定条件: 不为AstList(不可执行无意义) 子节点是数为0(实际未匹配可执行内容) ... [INFO] [stdout] | |_________________________________________________________________________________________________________^ [INFO] [stdout] 133 | ... let tree_node = parser_borrow.parse(lexer)?; [INFO] [stdout] | -------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast::ast_tree::AstTree` [INFO] [stdout] --> src/eval/eval.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::ast::ast_tree::AstTree; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::lexer::lexer::Lexer` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::lexer::lexer::Lexer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::token::Token` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::token::Token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Debug` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Debug` [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:10:16 [INFO] [stdout] | [INFO] [stdout] 10 | use std::fmt::{Debug, Display, Formatter}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lexer::Lexer` [INFO] [stdout] --> src/lexer/mod.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use lexer::Lexer; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::any::TypeId` [INFO] [stdout] --> src/util/dev_util.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::any::TypeId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `*` [INFO] [stdout] --> src/util/dev_util.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::parser::element::{*}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ast_leaf_default_eval_impl` [INFO] [stdout] --> src/ast/leaf/identifier_literal.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{ast_leaf_default_eval_impl, ast_leaf_default_impl, ast_leaf_default_new, ast_leaf_factory_default_impl}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Any` and `TypeId` [INFO] [stdout] --> src/ast/list/block_stmt.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::any::{Any, TypeId}; [INFO] [stdout] | ^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NullStmt` [INFO] [stdout] --> src/ast/list/block_stmt.rs:5:49 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::ast::list::null_stmt::{is_null_stmt, NullStmt}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Debug` [INFO] [stdout] --> src/ast/ast_list.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/parser/element.rs:124:13 [INFO] [stdout] | [INFO] [stdout] 124 | / ... /// parser 出现AstList则是factory构建ast节点的时候没有指定类型,实际上没有执行的功能 [INFO] [stdout] 125 | | ... /// 这种情况确实可以忽略,因为本身就是无法执行的,在ast树上也没意义 [INFO] [stdout] 126 | | ... /// [INFO] [stdout] 127 | | ... /// 按照BNF的语法定义,仅在 block中有 repeat ,定义为 {(";" | EOL) [ statement ]} "}" , [INFO] [stdout] ... | [INFO] [stdout] 131 | | ... /// [INFO] [stdout] 132 | | ... /// 故进入while 循环后的判定条件: 不为AstList(不可执行无意义) 子节点是数为0(实际未匹配可执行内容) ... [INFO] [stdout] | |_________________________________________________________________________________________________________^ [INFO] [stdout] 133 | ... let tree_node = parser_borrow.parse(lexer)?; [INFO] [stdout] | -------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast::ast_tree::AstTree` [INFO] [stdout] --> src/eval/eval.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::ast::ast_tree::AstTree; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast::ast_tree::AstTree` [INFO] [stdout] --> src/ast/leaf/identifier_literal.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ast::ast_tree::AstTree; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::token::Token` [INFO] [stdout] --> src/tests/line_reader_lexer_text.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::token::Token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/parser/element.rs:7:20 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::token::{Token, TokenValue}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:176:13 [INFO] [stdout] | [INFO] [stdout] 176 | let mut try_read_line; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/tests/line_reader_lexer_text.rs:170:13 [INFO] [stdout] | [INFO] [stdout] 170 | for i in 0.. 10 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `factor` [INFO] [stdout] --> src/tests/element_test.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | let factor = Rc::new(Parser::rule_def()); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_factor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `operators` [INFO] [stdout] --> src/tests/element_test.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | let operators = Rc::new(Operators::new()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operators` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/tests/element_test.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let x = Box::new(BinaryExprFactory {}); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `factor` [INFO] [stdout] --> src/tests/element_test.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | let factor = Rc::new(Parser::rule_def()); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_factor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `operators` [INFO] [stdout] --> src/tests/element_test.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | let operators = Rc::new(Operators::new()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operators` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/tests/element_test.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 69 | let x = BinaryExprFactory::new(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_token` [INFO] [stdout] --> src/tests/element_test.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | let num_token = NumToken::new(None); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tests/element_test.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | let mut test = Test { vec: vec![] }; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `option` [INFO] [stdout] --> src/tests/element_test.rs:287:13 [INFO] [stdout] | [INFO] [stdout] 287 | let option = vec_0_any.downcast_mut::(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_option` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tests/element_test.rs:286:13 [INFO] [stdout] | [INFO] [stdout] 286 | let mut vec_0_any: &mut dyn Any = vec_0.to_any_mut(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/ast/ast_macros.rs:266:31 [INFO] [stdout] | [INFO] [stdout] 266 | fn do_eval(&self, env: &mut crate::eval::environment::EnvWrapper) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] | [INFO] [stdout] ::: src/ast/leaf/string_literal.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | ast_leaf_default_eval_impl! { StringLiteral, StringVal, StringVal } [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_leaf_default_eval_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/ast/ast_macros.rs:266:31 [INFO] [stdout] | [INFO] [stdout] 266 | fn do_eval(&self, env: &mut crate::eval::environment::EnvWrapper) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] | [INFO] [stdout] ::: src/ast/leaf/number_literal.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | ast_leaf_default_eval_impl! { NumberLiteral, NUMBER, NUMBER } [INFO] [stdout] | ------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_leaf_default_eval_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/ast/list/null_stmt.rs:19:23 [INFO] [stdout] | [INFO] [stdout] 19 | fn do_eval(&self, env: &mut EnvWrapper) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/ast/list/primary_expr.rs:41:23 [INFO] [stdout] | [INFO] [stdout] 41 | fn do_eval(&self, env: &mut EnvWrapper) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/ast/ast_leaf.rs:26:21 [INFO] [stdout] | [INFO] [stdout] 26 | fn child(&self, index: usize) -> Option<&Box> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lexer` [INFO] [stdout] --> src/parser/element.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | fn is_match(&self, lexer: &mut dyn Lexer) -> bool { false } [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_lexer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/parser/element.rs:243:44 [INFO] [stdout] | [INFO] [stdout] 243 | fn parse(&self, lexer: &mut dyn Lexer, res: &mut Vec>) -> Result<(), String> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser/element.rs:303:15 [INFO] [stdout] | [INFO] [stdout] 303 | pub fn rc(mut self) -> Rc { [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] --> src/parser/parser.rs:46:22 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn reset_def(mut self) -> Self { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/parser/element.rs:7:20 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::token::{Token, TokenValue}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast::ast_tree::AstTree` [INFO] [stdout] --> src/ast/leaf/identifier_literal.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ast::ast_tree::AstTree; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser/parser.rs:134:21 [INFO] [stdout] | [INFO] [stdout] 134 | if let Some(mut ele_0) = self.elements.get_mut(0) { [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] --> src/parser/parser.rs:136:21 [INFO] [stdout] | [INFO] [stdout] 136 | let mut or_tree = [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] --> src/parser/parser.rs:151:15 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn rc(mut self) -> Rc> { [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] --> src/parser/basic_parser.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | let mut expr = Parser::rule_def().rc(); [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] --> src/parser/basic_parser.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | let mut statement = Parser::rule_def().rc(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `literal` is never used [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 28 | impl MatchNames { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | fn literal(&self) -> &str { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:176:13 [INFO] [stdout] | [INFO] [stdout] 176 | let mut try_read_line; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_string`, `is_number`, `is_string`, and `is_identifier` are never used [INFO] [stdout] --> src/token/token.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl TokenValue { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn to_string(&self) -> String{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn is_number(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn is_string(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn is_identifier(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/token/token_end.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl TokenEOF { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 32 | pub fn new(line_number: usize) -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_with_generic` is never used [INFO] [stdout] --> src/tests/element_test.rs:96:16 [INFO] [stdout] | [INFO] [stdout] 90 | impl Test { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn add_with_generic(mut self, e: Box) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `struct_is_type` is never used [INFO] [stdout] --> src/util/type_util.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn struct_is_type(struct_any: &dyn Any) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `struct_downcast_ref` is never used [INFO] [stdout] --> src/util/type_util.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn struct_downcast_ref(struct_any: Box) -> Result,Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_and_flush` is never used [INFO] [stdout] --> src/util/dev_util.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn print_and_flush(msg:&str, debug:&dyn Debug) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_and_flush_msg` is never used [INFO] [stdout] --> src/util/dev_util.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn print_and_flush_msg(msg:&str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:202:16 [INFO] [stdout] | [INFO] [stdout] 201 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 202 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/ast_leaf.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | ast_leaf_factory_default_impl! {DefAstLeafFactory,AstLeaf} [INFO] [stdout] | ---------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_leaf_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `factory` is never read [INFO] [stdout] --> src/ast/ast_macros.rs:150:11 [INFO] [stdout] | [INFO] [stdout] 150 | factory: Box, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/parser/element.rs:153:37 [INFO] [stdout] | [INFO] [stdout] 153 | ast_element_terminal_default_impl! {StrToken,StringLiteral,StringLiteralFactory} [INFO] [stdout] | -------------------------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | field in this struct [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_element_terminal_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_def` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:162:20 [INFO] [stdout] | [INFO] [stdout] 153 | impl $ele_name { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn new_def() -> Box{ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/parser/element.rs:153:1 [INFO] [stdout] | [INFO] [stdout] 153 | ast_element_terminal_default_impl! {StrToken,StringLiteral,StringLiteralFactory} [INFO] [stdout] | -------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_element_terminal_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `factory` is never read [INFO] [stdout] --> src/ast/ast_macros.rs:150:11 [INFO] [stdout] | [INFO] [stdout] 150 | factory: Box, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/parser/element.rs:154:37 [INFO] [stdout] | [INFO] [stdout] 154 | ast_element_terminal_default_impl! {NumToken, NumberLiteral,NumberLiteralFactory} [INFO] [stdout] | --------------------------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | field in this struct [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_element_terminal_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_def` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:162:20 [INFO] [stdout] | [INFO] [stdout] 153 | impl $ele_name { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn new_def() -> Box{ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/parser/element.rs:154:1 [INFO] [stdout] | [INFO] [stdout] 154 | ast_element_terminal_default_impl! {NumToken, NumberLiteral,NumberLiteralFactory} [INFO] [stdout] | --------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_element_terminal_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `factory` is never read [INFO] [stdout] --> src/parser/element.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct IdToken { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 156 | reserved: Vec, [INFO] [stdout] 157 | factory: Box, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_def` is never used [INFO] [stdout] --> src/parser/element.rs:169:12 [INFO] [stdout] | [INFO] [stdout] 159 | impl IdToken { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 169 | pub fn new_def(vec: Vec<&str>) -> Box { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/parser/parser.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Parser { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn reset(mut self, factory: Option>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn reset_def(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn token(mut self, pat: Vec<&str>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn maybe(mut self, repeat: &Rc>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub fn expr(mut self, f: Box, factor: &Rc>, operators: &Rc) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn insert_choice(mut self, parser: &Rc>) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | fn otherwise(&mut self,parser:&Rc>) -> Rc> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `clone` is never used [INFO] [stdout] --> src/parser/factory.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait AstFactory { [INFO] [stdout] | ---------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 8 | fn clone(&self) -> Box; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `make` is never used [INFO] [stdout] --> src/parser/factory.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait AstLeafFactory { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] 13 | fn make(&self, res: Box) -> Box; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `NAME` and `Struct` are never constructed [INFO] [stdout] --> src/eval/eval.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum EvalRes { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 8 | NAME(String), [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | BOOLEAN(bool), [INFO] [stdout] 10 | Struct(Vec), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EvalRes` 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: methods `is_string` and `is_identifier` are never used [INFO] [stdout] --> src/eval/eval.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl EvalRes { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 15 | pub fn is_string(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn is_identifier(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_with` is never used [INFO] [stdout] --> src/eval/environment.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl EnvWrapper { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn new_with(env: E) -> EnvWrapper { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tests/element_test.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | x.parse(&mut lexer, &mut res); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 42 | let _ = x.parse(&mut lexer, &mut res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `astTree` should have a snake case name [INFO] [stdout] --> src/tests/element_test.rs:149:16 [INFO] [stdout] | [INFO] [stdout] 149 | Ok(astTree) => { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `ast_tree` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/ast/ast_macros.rs:266:31 [INFO] [stdout] | [INFO] [stdout] 266 | fn do_eval(&self, env: &mut crate::eval::environment::EnvWrapper) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] | [INFO] [stdout] ::: src/ast/leaf/string_literal.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | ast_leaf_default_eval_impl! { StringLiteral, StringVal, StringVal } [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] = note: this warning originates in the macro `ast_leaf_default_eval_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/ast/ast_macros.rs:266:31 [INFO] [stdout] | [INFO] [stdout] 266 | fn do_eval(&self, env: &mut crate::eval::environment::EnvWrapper) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] | [INFO] [stdout] ::: src/ast/leaf/number_literal.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | ast_leaf_default_eval_impl! { NumberLiteral, NUMBER, NUMBER } [INFO] [stdout] | ------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_leaf_default_eval_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/ast/list/null_stmt.rs:19:23 [INFO] [stdout] | [INFO] [stdout] 19 | fn do_eval(&self, env: &mut EnvWrapper) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/ast/list/primary_expr.rs:41:23 [INFO] [stdout] | [INFO] [stdout] 41 | fn do_eval(&self, env: &mut EnvWrapper) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/ast/ast_leaf.rs:26:21 [INFO] [stdout] | [INFO] [stdout] 26 | fn child(&self, index: usize) -> Option<&Box> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lexer` [INFO] [stdout] --> src/parser/element.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | fn is_match(&self, lexer: &mut dyn Lexer) -> bool { false } [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_lexer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/parser/element.rs:243:44 [INFO] [stdout] | [INFO] [stdout] 243 | fn parse(&self, lexer: &mut dyn Lexer, res: &mut Vec>) -> Result<(), String> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser/element.rs:303:15 [INFO] [stdout] | [INFO] [stdout] 303 | pub fn rc(mut self) -> Rc { [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] --> src/parser/parser.rs:46:22 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn reset_def(mut self) -> Self { [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] --> src/parser/parser.rs:134:21 [INFO] [stdout] | [INFO] [stdout] 134 | if let Some(mut ele_0) = self.elements.get_mut(0) { [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] --> src/parser/parser.rs:136:21 [INFO] [stdout] | [INFO] [stdout] 136 | let mut or_tree = [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] --> src/parser/parser.rs:151:15 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn rc(mut self) -> Rc> { [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] --> src/parser/basic_parser.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | let mut expr = Parser::rule_def().rc(); [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] --> src/parser/basic_parser.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | let mut statement = Parser::rule_def().rc(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MATCH_COMMENT` is never used [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const MATCH_COMMENT: &str = "//."; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MATCH_IDENTIFIER` is never used [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const MATCH_IDENTIFIER: &str = r#"[A-Z_a-z][A-Z_a-z0-9]*|==|<=|>=|&&|\|\||[+\-*/%=\\|&,.!?(){}\[\]><:;]"#; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MATCH_NUMBER` is never used [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const MATCH_NUMBER: &str = r"[0-9]+"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MATCH_STRING` is never used [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const MATCH_STRING: &str = r#""((?:\\"|\\\\|\\n|[^"\\])*)""#; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `literal` is never used [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 28 | impl MatchNames { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | fn literal(&self) -> &str { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `match_line_regex_str` is never used [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn match_line_regex_str() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `new_with_regex` are never used [INFO] [stdout] --> src/lexer/line_reader_lexer.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl LineReaderLexer { [INFO] [stdout] | -------------------- associated functions in this implementation [INFO] [stdout] 69 | pub fn new(code: String) -> LineReaderLexer { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn new_with_regex(code: String, regex: Regex) -> LineReaderLexer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_string`, `is_number`, `is_string`, and `is_identifier` are never used [INFO] [stdout] --> src/token/token.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl TokenValue { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn to_string(&self) -> String{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn is_number(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn is_string(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn is_identifier(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/token/token_end.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl TokenEOF { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 32 | pub fn new(line_number: usize) -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `struct_is_type` is never used [INFO] [stdout] --> src/util/type_util.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn struct_is_type(struct_any: &dyn Any) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `struct_downcast_ref` is never used [INFO] [stdout] --> src/util/type_util.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn struct_downcast_ref(struct_any: Box) -> Result,Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_and_flush` is never used [INFO] [stdout] --> src/util/dev_util.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn print_and_flush(msg:&str, debug:&dyn Debug) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_and_flush_msg` is never used [INFO] [stdout] --> src/util/dev_util.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn print_and_flush_msg(msg:&str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:202:16 [INFO] [stdout] | [INFO] [stdout] 201 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 202 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/leaf/string_literal.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | ast_leaf_factory_default_impl! {StringLiteralFactory,StringLiteral} [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_leaf_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:202:16 [INFO] [stdout] | [INFO] [stdout] 201 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 202 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/leaf/number_literal.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | ast_leaf_factory_default_impl! {NumberLiteralFactory,NumberLiteral} [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_leaf_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:202:16 [INFO] [stdout] | [INFO] [stdout] 201 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 202 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/leaf/identifier_literal.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | ast_leaf_factory_default_impl! {IdentifierLiteralFactory,IdentifierLiteral} [INFO] [stdout] | --------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_leaf_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:223:16 [INFO] [stdout] | [INFO] [stdout] 222 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 223 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/list/binary_expr.rs:84:1 [INFO] [stdout] | [INFO] [stdout] 84 | ast_list_factory_default_impl! {BinaryExprFactory,BinaryExpr} [INFO] [stdout] | ------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_list_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:223:16 [INFO] [stdout] | [INFO] [stdout] 222 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 223 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/list/block_stmt.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | ast_list_factory_default_impl! {BlockStmtFactory,BlockStmt} [INFO] [stdout] | ----------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_list_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:223:16 [INFO] [stdout] | [INFO] [stdout] 222 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 223 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/list/if_stmt.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | ast_list_factory_default_impl! {IfStmtFactory,IfStmt} [INFO] [stdout] | ----------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_list_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:223:16 [INFO] [stdout] | [INFO] [stdout] 222 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 223 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/list/negative_expr.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | ast_list_factory_default_impl! {NegativeExprFactory,NegativeExpr} [INFO] [stdout] | ----------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_list_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:223:16 [INFO] [stdout] | [INFO] [stdout] 222 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 223 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/list/null_stmt.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | ast_list_factory_default_impl! {NullStmtFactory,NullStmt} [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_list_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/list/primary_expr.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl PrimaryExprFactory { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 21 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:223:16 [INFO] [stdout] | [INFO] [stdout] 222 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 223 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/list/while_stmt.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | ast_list_factory_default_impl! {WhileStmtFactory,WhileStmt} [INFO] [stdout] | ----------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_list_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ast/ast_macros.rs:202:16 [INFO] [stdout] | [INFO] [stdout] 201 | impl $factory_name { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 202 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/ast/ast_leaf.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | ast_leaf_factory_default_impl! {DefAstLeafFactory,AstLeaf} [INFO] [stdout] | ---------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_leaf_factory_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `el_actual_type_id` and `to_any_mut` are never used [INFO] [stdout] --> src/parser/element.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub trait Element { [INFO] [stdout] | ------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 22 | fn el_actual_type_id(&self) -> TypeId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 23 | [INFO] [stdout] 24 | fn to_any_mut (&mut self) -> &mut dyn Any{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parser/element.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl Tree { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 35 | pub fn new(parser: &Rc>) -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `insert` are never used [INFO] [stdout] --> src/parser/element.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl OrTree { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 60 | pub fn new(parser_vec: Vec>>) -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn insert(&mut self,parser: &Rc>) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parser/element.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 114 | impl Repeat { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 115 | pub fn new(parser: &Rc>, only_once: bool) -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `factory` is never read [INFO] [stdout] --> src/ast/ast_macros.rs:150:11 [INFO] [stdout] | [INFO] [stdout] 150 | factory: Box, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/parser/element.rs:153:37 [INFO] [stdout] | [INFO] [stdout] 153 | ast_element_terminal_default_impl! {StrToken,StringLiteral,StringLiteralFactory} [INFO] [stdout] | -------------------------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | field in this struct [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_element_terminal_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `new_def` are never used [INFO] [stdout] --> src/ast/ast_macros.rs:154:19 [INFO] [stdout] | [INFO] [stdout] 153 | impl $ele_name { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 154 | pub fn new(factory:Option>) -> Box{ [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn new_def() -> Box{ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/parser/element.rs:153:1 [INFO] [stdout] | [INFO] [stdout] 153 | ast_element_terminal_default_impl! {StrToken,StringLiteral,StringLiteralFactory} [INFO] [stdout] | -------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_element_terminal_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `factory` is never read [INFO] [stdout] --> src/ast/ast_macros.rs:150:11 [INFO] [stdout] | [INFO] [stdout] 150 | factory: Box, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/parser/element.rs:154:37 [INFO] [stdout] | [INFO] [stdout] 154 | ast_element_terminal_default_impl! {NumToken, NumberLiteral,NumberLiteralFactory} [INFO] [stdout] | --------------------------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | field in this struct [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_element_terminal_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `new_def` are never used [INFO] [stdout] --> src/ast/ast_macros.rs:154:19 [INFO] [stdout] | [INFO] [stdout] 153 | impl $ele_name { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 154 | pub fn new(factory:Option>) -> Box{ [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn new_def() -> Box{ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/parser/element.rs:154:1 [INFO] [stdout] | [INFO] [stdout] 154 | ast_element_terminal_default_impl! {NumToken, NumberLiteral,NumberLiteralFactory} [INFO] [stdout] | --------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast_element_terminal_default_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `factory` is never read [INFO] [stdout] --> src/parser/element.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct IdToken { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 156 | reserved: Vec, [INFO] [stdout] 157 | factory: Box, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `new_def` are never used [INFO] [stdout] --> src/parser/element.rs:160:12 [INFO] [stdout] | [INFO] [stdout] 159 | impl IdToken { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] 160 | pub fn new(factory: Option>, vec: Vec<&str>) -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | pub fn new_def(vec: Vec<&str>) -> Box { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parser/element.rs:202:12 [INFO] [stdout] | [INFO] [stdout] 201 | impl Leaf { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 202 | pub fn new(leaf_literal: Vec<&str>) -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parser/element.rs:233:12 [INFO] [stdout] | [INFO] [stdout] 232 | impl Skip { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 233 | pub fn new(leaf_literal: Vec<&str>) -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/parser/element.rs:266:5 [INFO] [stdout] | [INFO] [stdout] 265 | pub struct Precedence { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 266 | name: &'static str, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Precedence` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `left` and `right` are never used [INFO] [stdout] --> src/parser/element.rs:272:12 [INFO] [stdout] | [INFO] [stdout] 271 | impl Precedence { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 272 | pub fn left(name: &'static str, value: usize) -> Precedence { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 275 | pub fn right(name: &'static str, value: usize) -> Precedence { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add`, and `rc` are never used [INFO] [stdout] --> src/parser/element.rs:285:12 [INFO] [stdout] | [INFO] [stdout] 284 | impl Operators { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 285 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 291 | pub fn add(&mut self, precedence: Precedence) -> &Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | pub fn rc(mut self) -> Rc { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parser/element.rs:315:12 [INFO] [stdout] | [INFO] [stdout] 314 | impl Expr { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 315 | pub fn new(factor: Rc>, operators: Rc, factory: Box) -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/parser/parser.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Parser { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 16 | pub fn rule_def() -> Parser { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn rule(factory: Box) -> Parser { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn reset(mut self, factory: Option>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn reset_def(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn number(mut self, factory: Option>) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn identifier(mut self, factory: Option>, reserved: Vec<&str>) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn string(mut self, factory: Option>) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn token(mut self, pat: Vec<&str>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn ast(mut self, pat: &Rc>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn sep(mut self, pat: Vec<&str>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn or(mut self, vec: Vec<&Rc>>) -> Self { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn or_ref(&mut self, vec: Vec<&Rc>>) -> &Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn maybe(mut self, repeat: &Rc>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn option(mut self, repeat: &Rc>) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn repeat(mut self, repeat: &Rc>) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub fn expr(mut self, f: Box, factor: &Rc>, operators: &Rc) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn expr_ref(&mut self, f: Box, factor: &Rc>, operators: &Rc) -> &Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn insert_choice(mut self, parser: &Rc>) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | fn otherwise(&mut self,parser:&Rc>) -> Rc> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn rc(mut self) -> Rc> { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `clone` is never used [INFO] [stdout] --> src/parser/factory.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait AstFactory { [INFO] [stdout] | ---------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 8 | fn clone(&self) -> Box; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `make` is never used [INFO] [stdout] --> src/parser/factory.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait AstLeafFactory { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] 13 | fn make(&self, res: Box) -> Box; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parser/factory.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl AstListFactory { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 19 | pub fn new() -> Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `stone_parser` is never used [INFO] [stdout] --> src/parser/basic_parser.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn stone_parser() -> Parser { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `NAME` and `Struct` are never constructed [INFO] [stdout] --> src/eval/eval.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum EvalRes { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 8 | NAME(String), [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | BOOLEAN(bool), [INFO] [stdout] 10 | Struct(Vec), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EvalRes` 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: methods `is_string` and `is_identifier` are never used [INFO] [stdout] --> src/eval/eval.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl EvalRes { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 15 | pub fn is_string(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn is_identifier(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `new_with` are never used [INFO] [stdout] --> src/eval/environment.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl EnvWrapper { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 19 | pub fn new() -> EnvWrapper { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn new_with(env: E) -> EnvWrapper { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/eval/environment.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 53 | impl MapEnv { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 54 | pub fn new() -> MapEnv { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.76s [INFO] running `Command { std: "docker" "inspect" "8fe089c31c5102328035d846b3f53c32f52c3d358e15ed044125d32e8676782c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8fe089c31c5102328035d846b3f53c32f52c3d358e15ed044125d32e8676782c", kill_on_drop: false }` [INFO] [stdout] 8fe089c31c5102328035d846b3f53c32f52c3d358e15ed044125d32e8676782c