[INFO] cloning repository https://github.com/khaliq97/rust-web-engine [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/khaliq97/rust-web-engine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkhaliq97%2Frust-web-engine", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkhaliq97%2Frust-web-engine'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a76fb29ef39d0c3329271244a1c695634127af1b [INFO] checking khaliq97/rust-web-engine against try#a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d for pr-145342-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkhaliq97%2Frust-web-engine" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/khaliq97/rust-web-engine [INFO] finished tweaking git repo https://github.com/khaliq97/rust-web-engine [INFO] tweaked toml for git repo https://github.com/khaliq97/rust-web-engine written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/khaliq97/rust-web-engine on toolchain a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/khaliq97/rust-web-engine 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" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 572abfaea9b0c241ace7ac8d910b1ee326cd5f3085dccc3a4f16f2a6a62645f0 [INFO] running `Command { std: "docker" "start" "-a" "572abfaea9b0c241ace7ac8d910b1ee326cd5f3085dccc3a4f16f2a6a62645f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "572abfaea9b0c241ace7ac8d910b1ee326cd5f3085dccc3a4f16f2a6a62645f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "572abfaea9b0c241ace7ac8d910b1ee326cd5f3085dccc3a4f16f2a6a62645f0", kill_on_drop: false }` [INFO] [stdout] 572abfaea9b0c241ace7ac8d910b1ee326cd5f3085dccc3a4f16f2a6a62645f0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7767d4e0d64e266f3f56878ac80d9face4dc393aec5fd8e13d09601f8da67b07 [INFO] running `Command { std: "docker" "start" "-a" "7767d4e0d64e266f3f56878ac80d9face4dc393aec5fd8e13d09601f8da67b07", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.43 [INFO] [stderr] Compiling quote v1.0.21 [INFO] [stderr] Compiling unicode-ident v1.0.3 [INFO] [stderr] Compiling syn v1.0.99 [INFO] [stderr] Compiling serde_derive v1.0.144 [INFO] [stderr] Compiling serde v1.0.144 [INFO] [stderr] Compiling serde_json v1.0.85 [INFO] [stderr] Checking itoa v1.0.3 [INFO] [stderr] Checking ryu v1.0.11 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Checking web_engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: variant `ELEMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | ELEMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ElementNode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ATTRIBUTE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | ATTRIBUTE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AttributeNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `TEXT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | TEXT_NODE, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case: `TextNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CDATA_SECTION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | CDATA_SECTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CdataSectionNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ENTITY_REFERENCE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | ENTITY_REFERENCE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EntityReferenceNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ENTITY_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | ENTITY_NODE, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `EntityNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PROCESSING_INSTRUCTION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | PROCESSING_INSTRUCTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProcessingInstructionNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `COMMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | COMMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CommentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | DOCUMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_TYPE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | DOCUMENT_TYPE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentTypeNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_FRAGMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | DOCUMENT_FRAGMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentFragmentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NOTATION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | NOTATION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NotationNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RefNode` and `WeakNode` [INFO] [stdout] --> src/character_data.rs:1:30 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::node::{DOMString, RefNode, WeakNode}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RIGHT_PAREN` should have an upper camel case name [INFO] [stdout] --> src/token.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | LeftParen, RIGHT_PAREN, LEFT_BRACE, RIGHT_BRACE, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightParen` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LEFT_BRACE` should have an upper camel case name [INFO] [stdout] --> src/token.rs:6:29 [INFO] [stdout] | [INFO] [stdout] 6 | LeftParen, RIGHT_PAREN, LEFT_BRACE, RIGHT_BRACE, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftBrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RIGHT_BRACE` should have an upper camel case name [INFO] [stdout] --> src/token.rs:6:41 [INFO] [stdout] | [INFO] [stdout] 6 | LeftParen, RIGHT_PAREN, LEFT_BRACE, RIGHT_BRACE, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightBrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `BITWISE_NOT` should have an upper camel case name [INFO] [stdout] --> src/token.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | BITWISE_NOT, COLON, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `BitwiseNot` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `BANG_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | BANG, BANG_EQUAL, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `BangEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `EQUAL_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | EQUAL, EQUAL_EQUAL, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `EqualEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `GREATER_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | GREATER, GREATER_EQUAL, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `GreaterEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LESS_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | LESS, LESS_EQUAL, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `LessEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> src/parser.rs:107:14 [INFO] [stdout] | [INFO] [stdout] 107 | while(self.match_token(vec![TokenType::BANG_EQUAL, TokenType::EQUAL_EQUAL])) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 107 - while(self.match_token(vec![TokenType::BANG_EQUAL, TokenType::EQUAL_EQUAL])) { [INFO] [stdout] 107 + while self.match_token(vec![TokenType::BANG_EQUAL, TokenType::EQUAL_EQUAL]) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:291:12 [INFO] [stdout] | [INFO] [stdout] 291 | if (token_type == TokenType::EOF) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 291 - if (token_type == TokenType::EOF) { [INFO] [stdout] 291 + if token_type == TokenType::EOF { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::any::Any` [INFO] [stdout] --> src/interpreter.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::any::Any; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ref` [INFO] [stdout] --> src/interpreter.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::{Ref, RefCell}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Weak` [INFO] [stdout] --> src/interpreter.rs:8:19 [INFO] [stdout] | [INFO] [stdout] 8 | use std::rc::{Rc, Weak}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/interpreter.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::token::{Token, TokenType, Literal}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/interpreter.rs:505:137 [INFO] [stdout] | [INFO] [stdout] 505 | return create_normal_completion(Rc::new(ReferenceRecordOrJsValue::JSValue(Rc::new(RefCell::new(JSValue::Boolean(false))))));; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ELEMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | ELEMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ElementNode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ATTRIBUTE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | ATTRIBUTE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AttributeNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `TEXT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | TEXT_NODE, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case: `TextNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CDATA_SECTION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | CDATA_SECTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CdataSectionNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ENTITY_REFERENCE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | ENTITY_REFERENCE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EntityReferenceNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ENTITY_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | ENTITY_NODE, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `EntityNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PROCESSING_INSTRUCTION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | PROCESSING_INSTRUCTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProcessingInstructionNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `COMMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | COMMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CommentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | DOCUMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_TYPE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | DOCUMENT_TYPE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentTypeNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_FRAGMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | DOCUMENT_FRAGMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentFragmentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NOTATION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | NOTATION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NotationNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RefNode` and `WeakNode` [INFO] [stdout] --> src/character_data.rs:1:30 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::node::{DOMString, RefNode, WeakNode}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RIGHT_PAREN` should have an upper camel case name [INFO] [stdout] --> src/token.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | LeftParen, RIGHT_PAREN, LEFT_BRACE, RIGHT_BRACE, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightParen` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LEFT_BRACE` should have an upper camel case name [INFO] [stdout] --> src/token.rs:6:29 [INFO] [stdout] | [INFO] [stdout] 6 | LeftParen, RIGHT_PAREN, LEFT_BRACE, RIGHT_BRACE, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftBrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RIGHT_BRACE` should have an upper camel case name [INFO] [stdout] --> src/token.rs:6:41 [INFO] [stdout] | [INFO] [stdout] 6 | LeftParen, RIGHT_PAREN, LEFT_BRACE, RIGHT_BRACE, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightBrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `BITWISE_NOT` should have an upper camel case name [INFO] [stdout] --> src/token.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | BITWISE_NOT, COLON, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `BitwiseNot` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `BANG_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | BANG, BANG_EQUAL, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `BangEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `EQUAL_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | EQUAL, EQUAL_EQUAL, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `EqualEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `GREATER_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | GREATER, GREATER_EQUAL, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `GreaterEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LESS_EQUAL` should have an upper camel case name [INFO] [stdout] --> src/token.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | LESS, LESS_EQUAL, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `LessEqual` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> src/parser.rs:107:14 [INFO] [stdout] | [INFO] [stdout] 107 | while(self.match_token(vec![TokenType::BANG_EQUAL, TokenType::EQUAL_EQUAL])) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 107 - while(self.match_token(vec![TokenType::BANG_EQUAL, TokenType::EQUAL_EQUAL])) { [INFO] [stdout] 107 + while self.match_token(vec![TokenType::BANG_EQUAL, TokenType::EQUAL_EQUAL]) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:291:12 [INFO] [stdout] | [INFO] [stdout] 291 | if (token_type == TokenType::EOF) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 291 - if (token_type == TokenType::EOF) { [INFO] [stdout] 291 + if token_type == TokenType::EOF { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::any::Any` [INFO] [stdout] --> src/interpreter.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::any::Any; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ref` [INFO] [stdout] --> src/interpreter.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::{Ref, RefCell}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Weak` [INFO] [stdout] --> src/interpreter.rs:8:19 [INFO] [stdout] | [INFO] [stdout] 8 | use std::rc::{Rc, Weak}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/interpreter.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::token::{Token, TokenType, Literal}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/interpreter.rs:505:137 [INFO] [stdout] | [INFO] [stdout] 505 | return create_normal_completion(Rc::new(ReferenceRecordOrJsValue::JSValue(Rc::new(RefCell::new(JSValue::Boolean(false))))));; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::de::Read` [INFO] [stdout] --> src/parser.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use serde_json::de::Read; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:18:28 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn substring_data(offset: u32, count: u32) -> DOMString { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/character_data.rs:18:41 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn substring_data(offset: u32, count: u32) -> DOMString { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:24:25 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn append_data(data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:30:25 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn insert_data(offset: u32, data: DOMString) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:30:38 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn insert_data(offset: u32, data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/character_data.rs:36:39 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:36:51 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chars` [INFO] [stdout] --> src/scanner.rs:214:13 [INFO] [stdout] | [INFO] [stdout] 214 | let chars: Vec = self.source.chars().collect(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_chars` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/ast.rs:198:13 [INFO] [stdout] | [INFO] [stdout] 198 | _=> unimplemented!() [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/ast.rs:198:13 [INFO] [stdout] | [INFO] [stdout] 190 | ExpressionStatement::BinaryExpression(b) => visitor.visit_binary(b), [INFO] [stdout] | ---------------------------------------- matches some of the same values [INFO] [stdout] 191 | ExpressionStatement::LiteralExpression(l) => visitor.visit_literal(l), [INFO] [stdout] | ----------------------------------------- matches some of the same values [INFO] [stdout] 192 | ExpressionStatement::ParenthesizedExpression(p) => visitor.visit_parenthesized(p), [INFO] [stdout] | ----------------------------------------------- matches some of the same values [INFO] [stdout] 193 | ExpressionStatement::UnaryExpression(u) => visitor.visit_unary(u), [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 198 | _=> unimplemented!() [INFO] [stdout] | ^ ...and 4 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> src/ast_printer.rs:105:58 [INFO] [stdout] | [INFO] [stdout] 105 | ExpressionStatement::ObjectLiteralExpression(node) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `own_desc` [INFO] [stdout] --> src/interpreter.rs:145:21 [INFO] [stdout] | [INFO] [stdout] 145 | ... let own_desc = PropertyDescriptorType::PropertyDescriptor(PropertyDescriptor { property: Some(PropertyType::DataProperty(DataProper... [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_own_desc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `receiver` [INFO] [stdout] --> src/interpreter.rs:136:112 [INFO] [stdout] | [INFO] [stdout] 136 | ...lue: Rc>, receiver: &Rc>, own_descriptor: &PropertyDescriptorType) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_property` [INFO] [stdout] --> src/interpreter.rs:259:57 [INFO] [stdout] | [INFO] [stdout] 259 | Some(PropertyType::AccessorProperty(data_property)) => { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property_descriptor` [INFO] [stdout] --> src/interpreter.rs:286:56 [INFO] [stdout] | [INFO] [stdout] 286 | PropertyDescriptorType::PropertyDescriptor(property_descriptor) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property_descriptor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `receiver` [INFO] [stdout] --> src/interpreter.rs:335:47 [INFO] [stdout] | [INFO] [stdout] 335 | fn ordinary_get(&self, key: &PropertyKey, receiver: &Rc>) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `accessor_prop` [INFO] [stdout] --> src/interpreter.rs:407:44 [INFO] [stdout] | [INFO] [stdout] 407 | PropertyType::AccessorProperty(accessor_prop) => { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_accessor_prop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `marked_for_deletion` [INFO] [stdout] --> src/interpreter.rs:581:62 [INFO] [stdout] | [INFO] [stdout] 581 | fn create_mutable_binding(&mut self, binding_id: String, marked_for_deletion: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marked_for_deletion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mut_binding` [INFO] [stdout] --> src/interpreter.rs:600:45 [INFO] [stdout] | [INFO] [stdout] 600 | Binding::MutableBinding(mut_binding) => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mut_binding` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_strict` [INFO] [stdout] --> src/interpreter.rs:621:53 [INFO] [stdout] | [INFO] [stdout] 621 | fn get_binding_value(&self, binding_id: String, is_strict: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_strict` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_strict` [INFO] [stdout] --> src/interpreter.rs:654:53 [INFO] [stdout] | [INFO] [stdout] 654 | fn get_binding_value(&self, binding_id: String, is_strict: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_strict` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `declarative_record` [INFO] [stdout] --> src/interpreter.rs:766:21 [INFO] [stdout] | [INFO] [stdout] 766 | let declarative_record = &global_environment_record.borrow().declarative_environment_record; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_declarative_record` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expression` [INFO] [stdout] --> src/interpreter.rs:1014:41 [INFO] [stdout] | [INFO] [stdout] 1014 | fn visit_call_expression(&mut self, expression: &CallExpression) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `object_literal_expression` [INFO] [stdout] --> src/interpreter.rs:1036:51 [INFO] [stdout] | [INFO] [stdout] 1036 | fn visit_object_literal_expression(&mut self, object_literal_expression: &ObjectLiteralExpression) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_literal_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::de::Read` [INFO] [stdout] --> src/parser.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use serde_json::de::Read; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left_reference` [INFO] [stdout] --> src/interpreter.rs:1048:21 [INFO] [stdout] | [INFO] [stdout] 1048 | let left_reference = completion!(self.evaluate(&*expression.left_hand_side_expression)); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_left_reference` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1060:55 [INFO] [stdout] | [INFO] [stdout] 1060 | ReferenceRecordOrJsValue::JSValue(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `success` [INFO] [stdout] --> src/interpreter.rs:1179:13 [INFO] [stdout] | [INFO] [stdout] 1179 | let success = completion!(object.borrow_mut().set(key.clone(), value.clone(), object)); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_success` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:18:28 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn substring_data(offset: u32, count: u32) -> DOMString { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/character_data.rs:18:41 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn substring_data(offset: u32, count: u32) -> DOMString { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:24:25 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn append_data(data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:30:25 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn insert_data(offset: u32, data: DOMString) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:30:38 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn insert_data(offset: u32, data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/character_data.rs:36:39 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:36:51 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `throw` [INFO] [stdout] --> src/interpreter.rs:1177:99 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_throw` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `symbol_value` [INFO] [stdout] --> src/interpreter.rs:1248:45 [INFO] [stdout] | [INFO] [stdout] 1248 | ... JSValue::Symbol(symbol_value) => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/interpreter.rs:1568:30 [INFO] [stdout] | [INFO] [stdout] 1568 | JSValue::Numeric(val) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1572:29 [INFO] [stdout] | [INFO] [stdout] 1572 | JSValue::Symbol(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chars` [INFO] [stdout] --> src/scanner.rs:214:13 [INFO] [stdout] | [INFO] [stdout] 214 | let chars: Vec = self.source.chars().collect(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_chars` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1591:29 [INFO] [stdout] | [INFO] [stdout] 1591 | JSValue::String(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1595:29 [INFO] [stdout] | [INFO] [stdout] 1595 | JSValue::Object(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1609:29 [INFO] [stdout] | [INFO] [stdout] 1609 | JSValue::Object(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `preferred_type` [INFO] [stdout] --> src/interpreter.rs:1606:50 [INFO] [stdout] | [INFO] [stdout] 1606 | fn to_primitive(value: Rc>, preferred_type: Option) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preferred_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/interpreter.rs:1643:74 [INFO] [stdout] | [INFO] [stdout] 1643 | JSValue::Undefined | JSValue::Null | JSValue::Numeric(0.0) | JSValue::Numeric(-0.0) => { [INFO] [stdout] | --------------------- ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | | [INFO] [stdout] | matches all the relevant values [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1650:29 [INFO] [stdout] | [INFO] [stdout] 1650 | JSValue::Object(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left_string` [INFO] [stdout] --> src/interpreter.rs:1718:33 [INFO] [stdout] | [INFO] [stdout] 1718 | ... let left_string = completion!(Interpreter::to_string(right_val.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_left_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/ast.rs:198:13 [INFO] [stdout] | [INFO] [stdout] 198 | _=> unimplemented!() [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/ast.rs:198:13 [INFO] [stdout] | [INFO] [stdout] 190 | ExpressionStatement::BinaryExpression(b) => visitor.visit_binary(b), [INFO] [stdout] | ---------------------------------------- matches some of the same values [INFO] [stdout] 191 | ExpressionStatement::LiteralExpression(l) => visitor.visit_literal(l), [INFO] [stdout] | ----------------------------------------- matches some of the same values [INFO] [stdout] 192 | ExpressionStatement::ParenthesizedExpression(p) => visitor.visit_parenthesized(p), [INFO] [stdout] | ----------------------------------------------- matches some of the same values [INFO] [stdout] 193 | ExpressionStatement::UnaryExpression(u) => visitor.visit_unary(u), [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 198 | _=> unimplemented!() [INFO] [stdout] | ^ ...and 4 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1982:29 [INFO] [stdout] | [INFO] [stdout] 1982 | JSValue::Symbol(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:2008:29 [INFO] [stdout] | [INFO] [stdout] 2008 | JSValue::Object(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `JSObject` is more private than the item `Interpreter::set` [INFO] [stdout] --> src/interpreter.rs:1177:5 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::set` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `JSObject` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:84:1 [INFO] [stdout] | [INFO] [stdout] 84 | struct JSObject { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `PropertyKey` is more private than the item `Interpreter::set` [INFO] [stdout] --> src/interpreter.rs:1177:5 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::set` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `PropertyKey` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:57:1 [INFO] [stdout] | [INFO] [stdout] 57 | enum PropertyKey { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `JSValue` is more private than the item `Interpreter::set` [INFO] [stdout] --> src/interpreter.rs:1177:5 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::set` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `JSValue` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:460:1 [INFO] [stdout] | [INFO] [stdout] 460 | enum JSValue { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `CompletionRecord` is more private than the item `Interpreter::set` [INFO] [stdout] --> src/interpreter.rs:1177:5 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::set` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `CompletionRecord` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:1114:1 [INFO] [stdout] | [INFO] [stdout] 1114 | struct CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `JSValue` is more private than the item `Interpreter::to_string` [INFO] [stdout] --> src/interpreter.rs:1975:5 [INFO] [stdout] | [INFO] [stdout] 1975 | pub fn to_string(value: Rc>) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::to_string` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `JSValue` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:460:1 [INFO] [stdout] | [INFO] [stdout] 460 | enum JSValue { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `CompletionRecord` is more private than the item `Interpreter::to_string` [INFO] [stdout] --> src/interpreter.rs:1975:5 [INFO] [stdout] | [INFO] [stdout] 1975 | pub fn to_string(value: Rc>) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::to_string` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `CompletionRecord` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:1114:1 [INFO] [stdout] | [INFO] [stdout] 1114 | struct CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/node.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Node { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | nodeName: DOMString, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 27 | baseURI: USVString, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 28 | isConnected: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | firstChild: Weak>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 33 | lastChild: Weak>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 34 | previousSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 35 | nextSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 36 | nodeValue: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 37 | textContent: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/node.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct Element { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 73 | namespace_URI: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 74 | prefix: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 75 | local_name: DOMString, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 76 | tag_name: DOMString, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 77 | id: DOMString, [INFO] [stdout] | ^^ [INFO] [stdout] 78 | class_list: DOMString, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 79 | slot: DOMString, [INFO] [stdout] | ^^^^ [INFO] [stdout] 80 | classList: DOMTokenList, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 81 | attributes: NamedNodeMap, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `element` is never read [INFO] [stdout] --> src/node.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 102 | pub struct HTMLElement { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 103 | element: Element, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `property_name` is never read [INFO] [stdout] --> src/ast.rs:19:16 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct PropertyDefinition { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 19 | pub(crate) property_name: PropertyName, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PropertyDefinition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `statements` is never read [INFO] [stdout] --> src/ast.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct FunctionBody { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 68 | statements: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `binding_identifier` is never read [INFO] [stdout] --> src/ast.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct FormalParameter { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 77 | binding_identifier: Token, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `parameters` is never read [INFO] [stdout] --> src/ast.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct FormalParameters { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 82 | parameters: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `paren` is never read [INFO] [stdout] --> src/ast.rs:96:16 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct CallExpression { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 95 | pub(crate) callee: Box, [INFO] [stdout] 96 | pub(crate) paren: Token, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CallExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `variable_environment_record` is never read [INFO] [stdout] --> src/interpreter.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 22 | struct ExecutionContext { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 23 | lexical_environment_record: Rc>, [INFO] [stdout] 24 | variable_environment_record: Rc> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interpreter.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 48 | impl JSSymbol { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 49 | pub fn new(description: String) -> JSSymbol { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Symbol` is never constructed [INFO] [stdout] --> src/interpreter.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 57 | enum PropertyKey { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] 58 | String(String), [INFO] [stdout] 59 | Symbol(JSSymbol), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PropertyKey` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `set` is never read [INFO] [stdout] --> src/interpreter.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 70 | struct AccessorProperty { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 71 | get: Option JSObject>, [INFO] [stdout] 72 | set: Option JSObject> [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AccessorProperty` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `AccessorProperty` is never constructed [INFO] [stdout] --> src/interpreter.rs:78:5 [INFO] [stdout] | [INFO] [stdout] 76 | enum PropertyType { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] 77 | DataProperty(DataProperty), [INFO] [stdout] 78 | AccessorProperty(AccessorProperty), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PropertyType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `prototype` and `extensible` are never read [INFO] [stdout] --> src/interpreter.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 84 | struct JSObject { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 87 | pub prototype: Option>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 88 | pub extensible: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JSObject` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interpreter.rs:99:15 [INFO] [stdout] | [INFO] [stdout] 99 | Undefined(JSValue) [INFO] [stdout] | --------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `PropertyDescriptorType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 99 - Undefined(JSValue) [INFO] [stdout] 99 + Undefined(()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interpreter.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl JSObject { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 102 | pub fn new() -> JSObject { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Symbol` is never constructed [INFO] [stdout] --> src/interpreter.rs:464:5 [INFO] [stdout] | [INFO] [stdout] 460 | enum JSValue { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 464 | Symbol(JSSymbol), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JSValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `FunctionEnvironmentRecord` and `ObjectEnvironmentRecord` are never constructed [INFO] [stdout] --> src/interpreter.rs:474:5 [INFO] [stdout] | [INFO] [stdout] 472 | enum EnvironmentRecordType { [INFO] [stdout] | --------------------- variants in this enum [INFO] [stdout] 473 | DeclarativeEnvironmentRecord(Rc>), [INFO] [stdout] 474 | FunctionEnvironmentRecord(FunctionEnvironmentRecord), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 475 | ObjectEnvironmentRecord(Rc>), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnvironmentRecordType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ImmutableBinding` is never constructed [INFO] [stdout] --> src/interpreter.rs:785:5 [INFO] [stdout] | [INFO] [stdout] 783 | enum Binding { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] 784 | MutableBinding(MutableBinding), [INFO] [stdout] 785 | ImmutableBinding(ImmutableBinding) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Binding` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `function_environment_record` is never read [INFO] [stdout] --> src/interpreter.rs:791:5 [INFO] [stdout] | [INFO] [stdout] 789 | struct DeclarativeEnvironmentRecord { [INFO] [stdout] | ---------------------------- field in this struct [INFO] [stdout] 790 | // TODO: Should not be of an option type [INFO] [stdout] 791 | function_environment_record: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DeclarativeEnvironmentRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Lexical`, `Uninitialized`, and `Initialized` are never constructed [INFO] [stdout] --> src/interpreter.rs:797:5 [INFO] [stdout] | [INFO] [stdout] 796 | enum ThisBindingStatus { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 797 | Lexical, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 798 | Uninitialized, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 799 | Initialized, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ThisBindingStatus` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `this_value`, `this_binding_status`, `function_object`, and `new_target` are never read [INFO] [stdout] --> src/interpreter.rs:805:5 [INFO] [stdout] | [INFO] [stdout] 804 | struct FunctionEnvironmentRecord { [INFO] [stdout] | ------------------------- fields in this struct [INFO] [stdout] 805 | this_value: Box, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 806 | this_binding_status: ThisBindingStatus, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 807 | function_object: JSObject, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 808 | new_target: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionEnvironmentRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_with_environment` is never read [INFO] [stdout] --> src/interpreter.rs:814:5 [INFO] [stdout] | [INFO] [stdout] 812 | struct ObjectEnvironmentRecord { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] 813 | binding_object: Rc>, [INFO] [stdout] 814 | is_with_environment: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ObjectEnvironmentRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `global_this_value` is never read [INFO] [stdout] --> src/interpreter.rs:821:5 [INFO] [stdout] | [INFO] [stdout] 819 | struct GlobalEnvironmentRecord { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] 820 | object_environment_record: Option>>, [INFO] [stdout] 821 | global_this_value: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GlobalEnvironmentRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JSValue` is never constructed [INFO] [stdout] --> src/interpreter.rs:1081:5 [INFO] [stdout] | [INFO] [stdout] 1080 | enum BaseValue { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] 1081 | JSValue(Box), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BaseValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `strict` and `this_value` are never read [INFO] [stdout] --> src/interpreter.rs:1092:5 [INFO] [stdout] | [INFO] [stdout] 1088 | struct ReferenceRecord { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 1092 | strict: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 1093 | this_value: Option>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReferenceRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Break`, `Continue`, and `Return` are never constructed [INFO] [stdout] --> src/interpreter.rs:1106:5 [INFO] [stdout] | [INFO] [stdout] 1104 | enum CompletionRecordType { [INFO] [stdout] | -------------------- variants in this enum [INFO] [stdout] 1105 | Normal, [INFO] [stdout] 1106 | Break, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 1107 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 1108 | Return, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CompletionRecordType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `target` is never read [INFO] [stdout] --> src/interpreter.rs:1118:5 [INFO] [stdout] | [INFO] [stdout] 1114 | struct CompletionRecord { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 1118 | target: Option [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CompletionRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ObjectInternalSlot` is never used [INFO] [stdout] --> src/interpreter.rs:1122:6 [INFO] [stdout] | [INFO] [stdout] 1122 | enum ObjectInternalSlot { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `ordinary_object_create`, `make_basic_object`, `error`, and `report` are never used [INFO] [stdout] --> src/interpreter.rs:1157:8 [INFO] [stdout] | [INFO] [stdout] 1128 | impl Interpreter { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 1157 | fn ordinary_object_create(&mut self, proto: Option, mut additional_internal_slots: Vec) -> JSObject { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1185 | fn make_basic_object(&self, mut internal_slots: Vec) -> JSObject { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1520 | fn error(line: usize, message: String) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1524 | fn report(&mut self, line: i64, location: String, message: String) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peekNext` should have a snake case name [INFO] [stdout] --> src/lexer.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn peekNext(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `peek_next` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `rewindAndPeek` should have a snake case name [INFO] [stdout] --> src/lexer.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn rewindAndPeek(&mut self, amount: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `rewind_and_peek` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeType` should have a snake case name [INFO] [stdout] --> src/node.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub nodeType: NodeType, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `node_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeName` should have a snake case name [INFO] [stdout] --> src/node.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | nodeName: DOMString, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `node_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `baseURI` should have a snake case name [INFO] [stdout] --> src/node.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | baseURI: USVString, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `base_uri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isConnected` should have a snake case name [INFO] [stdout] --> src/node.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | isConnected: bool, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `is_connected` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `ownerDocument` should have a snake case name [INFO] [stdout] --> src/node.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub ownerDocument: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `owner_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `parentNode` should have a snake case name [INFO] [stdout] --> src/node.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub parentNode: Option, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `parent_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `childNodes` should have a snake case name [INFO] [stdout] --> src/node.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub childNodes: Children, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `child_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `firstChild` should have a snake case name [INFO] [stdout] --> src/node.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | firstChild: Weak>, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `first_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `lastChild` should have a snake case name [INFO] [stdout] --> src/node.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | lastChild: Weak>, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `last_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `previousSibling` should have a snake case name [INFO] [stdout] --> src/node.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | previousSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `previous_sibling` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextSibling` should have a snake case name [INFO] [stdout] --> src/node.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | nextSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `next_sibling` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeValue` should have a snake case name [INFO] [stdout] --> src/node.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | nodeValue: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `node_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `textContent` should have a snake case name [INFO] [stdout] --> src/node.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | textContent: Option, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `text_content` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `namespace_URI` should have a snake case name [INFO] [stdout] --> src/node.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | namespace_URI: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `namespace_uri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `classList` should have a snake case name [INFO] [stdout] --> src/node.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | classList: DOMTokenList, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_list` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `bindingObject` should have a snake case name [INFO] [stdout] --> src/interpreter.rs:656:13 [INFO] [stdout] | [INFO] [stdout] 656 | let bindingObject = &self.binding_object; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `binding_object` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `bindingObject` should have a snake case name [INFO] [stdout] --> src/interpreter.rs:687:13 [INFO] [stdout] | [INFO] [stdout] 687 | let bindingObject = &self.binding_object; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `binding_object` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> src/ast_printer.rs:105:58 [INFO] [stdout] | [INFO] [stdout] 105 | ExpressionStatement::ObjectLiteralExpression(node) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `own_desc` [INFO] [stdout] --> src/interpreter.rs:145:21 [INFO] [stdout] | [INFO] [stdout] 145 | ... let own_desc = PropertyDescriptorType::PropertyDescriptor(PropertyDescriptor { property: Some(PropertyType::DataProperty(DataProper... [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_own_desc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `receiver` [INFO] [stdout] --> src/interpreter.rs:136:112 [INFO] [stdout] | [INFO] [stdout] 136 | ...lue: Rc>, receiver: &Rc>, own_descriptor: &PropertyDescriptorType) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_property` [INFO] [stdout] --> src/interpreter.rs:259:57 [INFO] [stdout] | [INFO] [stdout] 259 | Some(PropertyType::AccessorProperty(data_property)) => { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property_descriptor` [INFO] [stdout] --> src/interpreter.rs:286:56 [INFO] [stdout] | [INFO] [stdout] 286 | PropertyDescriptorType::PropertyDescriptor(property_descriptor) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property_descriptor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `receiver` [INFO] [stdout] --> src/interpreter.rs:335:47 [INFO] [stdout] | [INFO] [stdout] 335 | fn ordinary_get(&self, key: &PropertyKey, receiver: &Rc>) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `accessor_prop` [INFO] [stdout] --> src/interpreter.rs:407:44 [INFO] [stdout] | [INFO] [stdout] 407 | PropertyType::AccessorProperty(accessor_prop) => { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_accessor_prop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `marked_for_deletion` [INFO] [stdout] --> src/interpreter.rs:581:62 [INFO] [stdout] | [INFO] [stdout] 581 | fn create_mutable_binding(&mut self, binding_id: String, marked_for_deletion: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_marked_for_deletion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mut_binding` [INFO] [stdout] --> src/interpreter.rs:600:45 [INFO] [stdout] | [INFO] [stdout] 600 | Binding::MutableBinding(mut_binding) => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mut_binding` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_strict` [INFO] [stdout] --> src/interpreter.rs:621:53 [INFO] [stdout] | [INFO] [stdout] 621 | fn get_binding_value(&self, binding_id: String, is_strict: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_strict` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_strict` [INFO] [stdout] --> src/interpreter.rs:654:53 [INFO] [stdout] | [INFO] [stdout] 654 | fn get_binding_value(&self, binding_id: String, is_strict: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_strict` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `declarative_record` [INFO] [stdout] --> src/interpreter.rs:766:21 [INFO] [stdout] | [INFO] [stdout] 766 | let declarative_record = &global_environment_record.borrow().declarative_environment_record; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_declarative_record` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expression` [INFO] [stdout] --> src/interpreter.rs:1014:41 [INFO] [stdout] | [INFO] [stdout] 1014 | fn visit_call_expression(&mut self, expression: &CallExpression) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `object_literal_expression` [INFO] [stdout] --> src/interpreter.rs:1036:51 [INFO] [stdout] | [INFO] [stdout] 1036 | fn visit_object_literal_expression(&mut self, object_literal_expression: &ObjectLiteralExpression) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_object_literal_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left_reference` [INFO] [stdout] --> src/interpreter.rs:1048:21 [INFO] [stdout] | [INFO] [stdout] 1048 | let left_reference = completion!(self.evaluate(&*expression.left_hand_side_expression)); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_left_reference` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1060:55 [INFO] [stdout] | [INFO] [stdout] 1060 | ReferenceRecordOrJsValue::JSValue(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `success` [INFO] [stdout] --> src/interpreter.rs:1179:13 [INFO] [stdout] | [INFO] [stdout] 1179 | let success = completion!(object.borrow_mut().set(key.clone(), value.clone(), object)); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_success` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `throw` [INFO] [stdout] --> src/interpreter.rs:1177:99 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_throw` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `symbol_value` [INFO] [stdout] --> src/interpreter.rs:1248:45 [INFO] [stdout] | [INFO] [stdout] 1248 | ... JSValue::Symbol(symbol_value) => { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/interpreter.rs:1568:30 [INFO] [stdout] | [INFO] [stdout] 1568 | JSValue::Numeric(val) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1572:29 [INFO] [stdout] | [INFO] [stdout] 1572 | JSValue::Symbol(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1591:29 [INFO] [stdout] | [INFO] [stdout] 1591 | JSValue::String(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1595:29 [INFO] [stdout] | [INFO] [stdout] 1595 | JSValue::Object(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1609:29 [INFO] [stdout] | [INFO] [stdout] 1609 | JSValue::Object(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `preferred_type` [INFO] [stdout] --> src/interpreter.rs:1606:50 [INFO] [stdout] | [INFO] [stdout] 1606 | fn to_primitive(value: Rc>, preferred_type: Option) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preferred_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/interpreter.rs:1643:74 [INFO] [stdout] | [INFO] [stdout] 1643 | JSValue::Undefined | JSValue::Null | JSValue::Numeric(0.0) | JSValue::Numeric(-0.0) => { [INFO] [stdout] | --------------------- ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | | [INFO] [stdout] | matches all the relevant values [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1650:29 [INFO] [stdout] | [INFO] [stdout] 1650 | JSValue::Object(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left_string` [INFO] [stdout] --> src/interpreter.rs:1718:33 [INFO] [stdout] | [INFO] [stdout] 1718 | ... let left_string = completion!(Interpreter::to_string(right_val.clone())); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_left_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:1982:29 [INFO] [stdout] | [INFO] [stdout] 1982 | JSValue::Symbol(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/interpreter.rs:2008:29 [INFO] [stdout] | [INFO] [stdout] 2008 | JSValue::Object(value) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `JSObject` is more private than the item `Interpreter::set` [INFO] [stdout] --> src/interpreter.rs:1177:5 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::set` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `JSObject` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:84:1 [INFO] [stdout] | [INFO] [stdout] 84 | struct JSObject { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `PropertyKey` is more private than the item `Interpreter::set` [INFO] [stdout] --> src/interpreter.rs:1177:5 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::set` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `PropertyKey` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:57:1 [INFO] [stdout] | [INFO] [stdout] 57 | enum PropertyKey { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `JSValue` is more private than the item `Interpreter::set` [INFO] [stdout] --> src/interpreter.rs:1177:5 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::set` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `JSValue` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:460:1 [INFO] [stdout] | [INFO] [stdout] 460 | enum JSValue { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `CompletionRecord` is more private than the item `Interpreter::set` [INFO] [stdout] --> src/interpreter.rs:1177:5 [INFO] [stdout] | [INFO] [stdout] 1177 | pub fn set(object: &Rc>, key: Rc, value: Rc>, throw: bool) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::set` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `CompletionRecord` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:1114:1 [INFO] [stdout] | [INFO] [stdout] 1114 | struct CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `JSValue` is more private than the item `Interpreter::to_string` [INFO] [stdout] --> src/interpreter.rs:1975:5 [INFO] [stdout] | [INFO] [stdout] 1975 | pub fn to_string(value: Rc>) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::to_string` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `JSValue` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:460:1 [INFO] [stdout] | [INFO] [stdout] 460 | enum JSValue { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `CompletionRecord` is more private than the item `Interpreter::to_string` [INFO] [stdout] --> src/interpreter.rs:1975:5 [INFO] [stdout] | [INFO] [stdout] 1975 | pub fn to_string(value: Rc>) -> CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `Interpreter::to_string` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `CompletionRecord` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/interpreter.rs:1114:1 [INFO] [stdout] | [INFO] [stdout] 1114 | struct CompletionRecord { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/node.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Node { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | nodeName: DOMString, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 27 | baseURI: USVString, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 28 | isConnected: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | firstChild: Weak>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 33 | lastChild: Weak>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 34 | previousSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 35 | nextSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 36 | nodeValue: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 37 | textContent: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/node.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct Element { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 73 | namespace_URI: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 74 | prefix: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 75 | local_name: DOMString, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 76 | tag_name: DOMString, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 77 | id: DOMString, [INFO] [stdout] | ^^ [INFO] [stdout] 78 | class_list: DOMString, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 79 | slot: DOMString, [INFO] [stdout] | ^^^^ [INFO] [stdout] 80 | classList: DOMTokenList, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 81 | attributes: NamedNodeMap, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `element` is never read [INFO] [stdout] --> src/node.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 102 | pub struct HTMLElement { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 103 | element: Element, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `property_name` is never read [INFO] [stdout] --> src/ast.rs:19:16 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct PropertyDefinition { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 19 | pub(crate) property_name: PropertyName, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PropertyDefinition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `statements` is never read [INFO] [stdout] --> src/ast.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct FunctionBody { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 68 | statements: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `binding_identifier` is never read [INFO] [stdout] --> src/ast.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct FormalParameter { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 77 | binding_identifier: Token, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `parameters` is never read [INFO] [stdout] --> src/ast.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct FormalParameters { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 82 | parameters: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `paren` is never read [INFO] [stdout] --> src/ast.rs:96:16 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct CallExpression { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 95 | pub(crate) callee: Box, [INFO] [stdout] 96 | pub(crate) paren: Token, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CallExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `variable_environment_record` is never read [INFO] [stdout] --> src/interpreter.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 22 | struct ExecutionContext { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 23 | lexical_environment_record: Rc>, [INFO] [stdout] 24 | variable_environment_record: Rc> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interpreter.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 48 | impl JSSymbol { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 49 | pub fn new(description: String) -> JSSymbol { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Symbol` is never constructed [INFO] [stdout] --> src/interpreter.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 57 | enum PropertyKey { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] 58 | String(String), [INFO] [stdout] 59 | Symbol(JSSymbol), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PropertyKey` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `set` is never read [INFO] [stdout] --> src/interpreter.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 70 | struct AccessorProperty { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 71 | get: Option JSObject>, [INFO] [stdout] 72 | set: Option JSObject> [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AccessorProperty` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `AccessorProperty` is never constructed [INFO] [stdout] --> src/interpreter.rs:78:5 [INFO] [stdout] | [INFO] [stdout] 76 | enum PropertyType { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] 77 | DataProperty(DataProperty), [INFO] [stdout] 78 | AccessorProperty(AccessorProperty), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PropertyType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `prototype` and `extensible` are never read [INFO] [stdout] --> src/interpreter.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 84 | struct JSObject { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 87 | pub prototype: Option>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 88 | pub extensible: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JSObject` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interpreter.rs:99:15 [INFO] [stdout] | [INFO] [stdout] 99 | Undefined(JSValue) [INFO] [stdout] | --------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `PropertyDescriptorType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 99 - Undefined(JSValue) [INFO] [stdout] 99 + Undefined(()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interpreter.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl JSObject { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 102 | pub fn new() -> JSObject { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Symbol` is never constructed [INFO] [stdout] --> src/interpreter.rs:464:5 [INFO] [stdout] | [INFO] [stdout] 460 | enum JSValue { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 464 | Symbol(JSSymbol), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JSValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `FunctionEnvironmentRecord` and `ObjectEnvironmentRecord` are never constructed [INFO] [stdout] --> src/interpreter.rs:474:5 [INFO] [stdout] | [INFO] [stdout] 472 | enum EnvironmentRecordType { [INFO] [stdout] | --------------------- variants in this enum [INFO] [stdout] 473 | DeclarativeEnvironmentRecord(Rc>), [INFO] [stdout] 474 | FunctionEnvironmentRecord(FunctionEnvironmentRecord), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 475 | ObjectEnvironmentRecord(Rc>), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnvironmentRecordType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ImmutableBinding` is never constructed [INFO] [stdout] --> src/interpreter.rs:785:5 [INFO] [stdout] | [INFO] [stdout] 783 | enum Binding { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] 784 | MutableBinding(MutableBinding), [INFO] [stdout] 785 | ImmutableBinding(ImmutableBinding) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Binding` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `function_environment_record` is never read [INFO] [stdout] --> src/interpreter.rs:791:5 [INFO] [stdout] | [INFO] [stdout] 789 | struct DeclarativeEnvironmentRecord { [INFO] [stdout] | ---------------------------- field in this struct [INFO] [stdout] 790 | // TODO: Should not be of an option type [INFO] [stdout] 791 | function_environment_record: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DeclarativeEnvironmentRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Lexical`, `Uninitialized`, and `Initialized` are never constructed [INFO] [stdout] --> src/interpreter.rs:797:5 [INFO] [stdout] | [INFO] [stdout] 796 | enum ThisBindingStatus { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 797 | Lexical, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 798 | Uninitialized, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 799 | Initialized, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ThisBindingStatus` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `this_value`, `this_binding_status`, `function_object`, and `new_target` are never read [INFO] [stdout] --> src/interpreter.rs:805:5 [INFO] [stdout] | [INFO] [stdout] 804 | struct FunctionEnvironmentRecord { [INFO] [stdout] | ------------------------- fields in this struct [INFO] [stdout] 805 | this_value: Box, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 806 | this_binding_status: ThisBindingStatus, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 807 | function_object: JSObject, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 808 | new_target: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionEnvironmentRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_with_environment` is never read [INFO] [stdout] --> src/interpreter.rs:814:5 [INFO] [stdout] | [INFO] [stdout] 812 | struct ObjectEnvironmentRecord { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] 813 | binding_object: Rc>, [INFO] [stdout] 814 | is_with_environment: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ObjectEnvironmentRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `global_this_value` is never read [INFO] [stdout] --> src/interpreter.rs:821:5 [INFO] [stdout] | [INFO] [stdout] 819 | struct GlobalEnvironmentRecord { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] 820 | object_environment_record: Option>>, [INFO] [stdout] 821 | global_this_value: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GlobalEnvironmentRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JSValue` is never constructed [INFO] [stdout] --> src/interpreter.rs:1081:5 [INFO] [stdout] | [INFO] [stdout] 1080 | enum BaseValue { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] 1081 | JSValue(Box), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BaseValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `strict` and `this_value` are never read [INFO] [stdout] --> src/interpreter.rs:1092:5 [INFO] [stdout] | [INFO] [stdout] 1088 | struct ReferenceRecord { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 1092 | strict: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 1093 | this_value: Option>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReferenceRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Break`, `Continue`, and `Return` are never constructed [INFO] [stdout] --> src/interpreter.rs:1106:5 [INFO] [stdout] | [INFO] [stdout] 1104 | enum CompletionRecordType { [INFO] [stdout] | -------------------- variants in this enum [INFO] [stdout] 1105 | Normal, [INFO] [stdout] 1106 | Break, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 1107 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 1108 | Return, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CompletionRecordType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `target` is never read [INFO] [stdout] --> src/interpreter.rs:1118:5 [INFO] [stdout] | [INFO] [stdout] 1114 | struct CompletionRecord { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 1118 | target: Option [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CompletionRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ObjectInternalSlot` is never used [INFO] [stdout] --> src/interpreter.rs:1122:6 [INFO] [stdout] | [INFO] [stdout] 1122 | enum ObjectInternalSlot { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `ordinary_object_create`, `make_basic_object`, `error`, and `report` are never used [INFO] [stdout] --> src/interpreter.rs:1157:8 [INFO] [stdout] | [INFO] [stdout] 1128 | impl Interpreter { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 1157 | fn ordinary_object_create(&mut self, proto: Option, mut additional_internal_slots: Vec) -> JSObject { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1185 | fn make_basic_object(&self, mut internal_slots: Vec) -> JSObject { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1520 | fn error(line: usize, message: String) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1524 | fn report(&mut self, line: i64, location: String, message: String) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peekNext` should have a snake case name [INFO] [stdout] --> src/lexer.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn peekNext(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `peek_next` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `rewindAndPeek` should have a snake case name [INFO] [stdout] --> src/lexer.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn rewindAndPeek(&mut self, amount: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `rewind_and_peek` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeType` should have a snake case name [INFO] [stdout] --> src/node.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub nodeType: NodeType, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `node_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeName` should have a snake case name [INFO] [stdout] --> src/node.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | nodeName: DOMString, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `node_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `baseURI` should have a snake case name [INFO] [stdout] --> src/node.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | baseURI: USVString, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `base_uri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isConnected` should have a snake case name [INFO] [stdout] --> src/node.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | isConnected: bool, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `is_connected` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `ownerDocument` should have a snake case name [INFO] [stdout] --> src/node.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub ownerDocument: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `owner_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `parentNode` should have a snake case name [INFO] [stdout] --> src/node.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub parentNode: Option, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `parent_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `childNodes` should have a snake case name [INFO] [stdout] --> src/node.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub childNodes: Children, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `child_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `firstChild` should have a snake case name [INFO] [stdout] --> src/node.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | firstChild: Weak>, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `first_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `lastChild` should have a snake case name [INFO] [stdout] --> src/node.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | lastChild: Weak>, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `last_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `previousSibling` should have a snake case name [INFO] [stdout] --> src/node.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | previousSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `previous_sibling` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextSibling` should have a snake case name [INFO] [stdout] --> src/node.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | nextSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `next_sibling` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeValue` should have a snake case name [INFO] [stdout] --> src/node.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | nodeValue: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `node_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `textContent` should have a snake case name [INFO] [stdout] --> src/node.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | textContent: Option, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `text_content` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `namespace_URI` should have a snake case name [INFO] [stdout] --> src/node.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | namespace_URI: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `namespace_uri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `classList` should have a snake case name [INFO] [stdout] --> src/node.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | classList: DOMTokenList, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_list` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `bindingObject` should have a snake case name [INFO] [stdout] --> src/interpreter.rs:656:13 [INFO] [stdout] | [INFO] [stdout] 656 | let bindingObject = &self.binding_object; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `binding_object` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `bindingObject` should have a snake case name [INFO] [stdout] --> src/interpreter.rs:687:13 [INFO] [stdout] | [INFO] [stdout] 687 | let bindingObject = &self.binding_object; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `binding_object` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `borrow::Borrow` [INFO] [stdout] --> src/main.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{env, borrow::Borrow}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `NodeData` and `Node` [INFO] [stdout] --> src/main.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | use web_engine::node::{Node, NodeData}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/tokenizer.rs:2583:58 [INFO] [stdout] | [INFO] [stdout] 2583 | ... self.html_tokens.push((Tokenizer::create_character_html_token('<'))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2583 - self.html_tokens.push((Tokenizer::create_character_html_token('<'))); [INFO] [stdout] 2583 + self.html_tokens.push(Tokenizer::create_character_html_token('<')); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ELEMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | ELEMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ElementNode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ATTRIBUTE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | ATTRIBUTE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AttributeNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `TEXT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | TEXT_NODE, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case: `TextNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CDATA_SECTION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | CDATA_SECTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CdataSectionNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ENTITY_REFERENCE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | ENTITY_REFERENCE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EntityReferenceNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ENTITY_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | ENTITY_NODE, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `EntityNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PROCESSING_INSTRUCTION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | PROCESSING_INSTRUCTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProcessingInstructionNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `COMMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | COMMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CommentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | DOCUMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_TYPE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | DOCUMENT_TYPE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentTypeNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_FRAGMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | DOCUMENT_FRAGMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentFragmentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NOTATION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | NOTATION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NotationNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RefNode` and `WeakNode` [INFO] [stdout] --> src/character_data.rs:1:30 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::node::{DOMString, RefNode, WeakNode}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/html_document_parser.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::process::abort` [INFO] [stdout] --> src/html_document_parser.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::process::abort; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Node` [INFO] [stdout] --> src/html_document_parser.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use web_engine::node::{Node}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:66:32 [INFO] [stdout] | [INFO] [stdout] 66 | ...if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 66 - if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] 66 + if html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:74:32 [INFO] [stdout] | [INFO] [stdout] 74 | ... if (html_token.name != "html" [INFO] [stdout] | ^ [INFO] [stdout] 75 | ... || html_token.public_identifier.len() != 0 [INFO] [stdout] 76 | ... || (html_token.system_identifier.len() != 0 && html_token.system_identifier != "about:legacy-compat")) { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 74 ~ if html_token.name != "html" [INFO] [stdout] 75 | || html_token.public_identifier.len() != 0 [INFO] [stdout] 76 ~ || (html_token.system_identifier.len() != 0 && html_token.system_identifier != "about:legacy-compat") { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:102:32 [INFO] [stdout] | [INFO] [stdout] 102 | ...if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 102 - if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] 102 + if html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:107:32 [INFO] [stdout] | [INFO] [stdout] 107 | ... if (html_token.tag_name == "html") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 107 - if (html_token.tag_name == "html") { [INFO] [stdout] 107 + if html_token.tag_name == "html" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:140:32 [INFO] [stdout] | [INFO] [stdout] 140 | ...if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 140 - if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] 140 + if html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:208:32 [INFO] [stdout] | [INFO] [stdout] 208 | ...if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 208 - if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] 208 + if html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `borrow::Borrow` [INFO] [stdout] --> src/main.rs:1:16 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{env, borrow::Borrow}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `NodeData` and `Node` [INFO] [stdout] --> src/main.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | use web_engine::node::{Node, NodeData}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around method argument [INFO] [stdout] --> src/tokenizer.rs:2583:58 [INFO] [stdout] | [INFO] [stdout] 2583 | ... self.html_tokens.push((Tokenizer::create_character_html_token('<'))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2583 - self.html_tokens.push((Tokenizer::create_character_html_token('<'))); [INFO] [stdout] 2583 + self.html_tokens.push(Tokenizer::create_character_html_token('<')); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ELEMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | ELEMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ElementNode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ATTRIBUTE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | ATTRIBUTE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AttributeNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `TEXT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | TEXT_NODE, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case: `TextNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CDATA_SECTION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | CDATA_SECTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CdataSectionNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ENTITY_REFERENCE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | ENTITY_REFERENCE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EntityReferenceNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ENTITY_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | ENTITY_NODE, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `EntityNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PROCESSING_INSTRUCTION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | PROCESSING_INSTRUCTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ProcessingInstructionNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `COMMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | COMMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CommentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | DOCUMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_TYPE_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | DOCUMENT_TYPE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentTypeNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `DOCUMENT_FRAGMENT_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | DOCUMENT_FRAGMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DocumentFragmentNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NOTATION_NODE` should have an upper camel case name [INFO] [stdout] --> src/node.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | NOTATION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `NotationNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RefNode` and `WeakNode` [INFO] [stdout] --> src/character_data.rs:1:30 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::node::{DOMString, RefNode, WeakNode}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/html_document_parser.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::process::abort` [INFO] [stdout] --> src/html_document_parser.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::process::abort; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Node` [INFO] [stdout] --> src/html_document_parser.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use web_engine::node::{Node}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:66:32 [INFO] [stdout] | [INFO] [stdout] 66 | ...if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 66 - if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] 66 + if html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:74:32 [INFO] [stdout] | [INFO] [stdout] 74 | ... if (html_token.name != "html" [INFO] [stdout] | ^ [INFO] [stdout] 75 | ... || html_token.public_identifier.len() != 0 [INFO] [stdout] 76 | ... || (html_token.system_identifier.len() != 0 && html_token.system_identifier != "about:legacy-compat")) { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 74 ~ if html_token.name != "html" [INFO] [stdout] 75 | || html_token.public_identifier.len() != 0 [INFO] [stdout] 76 ~ || (html_token.system_identifier.len() != 0 && html_token.system_identifier != "about:legacy-compat") { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:102:32 [INFO] [stdout] | [INFO] [stdout] 102 | ...if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 102 - if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] 102 + if html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:107:32 [INFO] [stdout] | [INFO] [stdout] 107 | ... if (html_token.tag_name == "html") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 107 - if (html_token.tag_name == "html") { [INFO] [stdout] 107 + if html_token.tag_name == "html" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:140:32 [INFO] [stdout] | [INFO] [stdout] 140 | ...if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 140 - if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] 140 + if html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/html_document_parser.rs:208:32 [INFO] [stdout] | [INFO] [stdout] 208 | ...if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 208 - if (html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}") { [INFO] [stdout] 208 + if html_token.data == "\u{0009}" || html_token.data == "\u{000A}" || html_token.data == "\u{000C}" || html_token.data == "\u{000D}" || html_token.data == "\u{0020}" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:18:28 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn substring_data(offset: u32, count: u32) -> DOMString { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/character_data.rs:18:41 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn substring_data(offset: u32, count: u32) -> DOMString { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:24:25 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn append_data(data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:30:25 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn insert_data(offset: u32, data: DOMString) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:30:38 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn insert_data(offset: u32, data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/character_data.rs:36:39 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:36:51 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `adjusted_insertion_location` [INFO] [stdout] --> src/html_document_parser.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | let adjusted_insertion_location = &self.appropriate_place_for_inserting_a_node(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_adjusted_insertion_location` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `namespace` [INFO] [stdout] --> src/html_document_parser.rs:340:77 [INFO] [stdout] | [INFO] [stdout] 340 | ...e, local_name: DOMString, namespace: Option, prefix: Option, is: Option, synchronous_custom_elements : bool) -... [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_namespace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prefix` [INFO] [stdout] --> src/html_document_parser.rs:340:104 [INFO] [stdout] | [INFO] [stdout] 340 | ..., namespace: Option, prefix: Option, is: Option, synchronous_custom_elements : bool) -> RefNode { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prefix` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is` [INFO] [stdout] --> src/html_document_parser.rs:340:128 [INFO] [stdout] | [INFO] [stdout] 340 | ...String>, prefix: Option, is: Option, synchronous_custom_elements : bool) -> RefNode { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_is` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `synchronous_custom_elements` [INFO] [stdout] --> src/html_document_parser.rs:340:148 [INFO] [stdout] | [INFO] [stdout] 340 | ...tring>, synchronous_custom_elements : bool) -> RefNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_synchronous_custom_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `source_html_file_path` is never read [INFO] [stdout] --> src/main.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | let mut source_html_file_path: String = String::from(""); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `codepoints` is never read [INFO] [stdout] --> src/tokenizer.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 13 | struct NamedCharacterReferenceObject { [INFO] [stdout] | ----------------------------- field in this struct [INFO] [stdout] 14 | character_reference: String, [INFO] [stdout] 15 | codepoints: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `current_html_token` is never read [INFO] [stdout] --> src/tokenizer.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Tokenizer { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 31 | current_html_token: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peekNext` is never used [INFO] [stdout] --> src/lexer.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Lexer { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn peekNext(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/node.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum NodeType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 8 | ELEMENT_NODE, [INFO] [stdout] 9 | ATTRIBUTE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 10 | TEXT_NODE, [INFO] [stdout] 11 | CDATA_SECTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | ENTITY_REFERENCE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | ENTITY_NODE, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 14 | PROCESSING_INSTRUCTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | DOCUMENT_FRAGMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | NOTATION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/node.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Node { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | nodeName: DOMString, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 27 | baseURI: USVString, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 28 | isConnected: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | firstChild: Weak>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 33 | lastChild: Weak>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 34 | previousSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 35 | nextSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 36 | nodeValue: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 37 | textContent: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `public_id`, and `system_id` are never read [INFO] [stdout] --> src/node.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct DocumentType { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 52 | pub name: DOMString, [INFO] [stdout] | ^^^^ [INFO] [stdout] 53 | pub public_id: DOMString, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 54 | pub system_id: DOMString, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/node.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct Element { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 73 | namespace_URI: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 74 | prefix: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 75 | local_name: DOMString, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 76 | tag_name: DOMString, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 77 | id: DOMString, [INFO] [stdout] | ^^ [INFO] [stdout] 78 | class_list: DOMString, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 79 | slot: DOMString, [INFO] [stdout] | ^^^^ [INFO] [stdout] 80 | classList: DOMTokenList, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 81 | attributes: NamedNodeMap, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HTMLElement` is never constructed [INFO] [stdout] --> src/node.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 102 | pub struct HTMLElement { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/node.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | Comment(Comment), [INFO] [stdout] | ------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 144 - Comment(Comment), [INFO] [stdout] 144 + Comment(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/node.rs:146:18 [INFO] [stdout] | [INFO] [stdout] 146 | DocumentType(DocumentType), [INFO] [stdout] | ------------ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 146 - DocumentType(DocumentType), [INFO] [stdout] 146 + DocumentType(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/node.rs:147:13 [INFO] [stdout] | [INFO] [stdout] 147 | Element(Element), [INFO] [stdout] | ------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 147 - Element(Element), [INFO] [stdout] 147 + Element(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CharacterData` is never constructed [INFO] [stdout] --> src/node.rs:148:5 [INFO] [stdout] | [INFO] [stdout] 143 | pub enum NodeData { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 148 | CharacterData(CharacterData), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `character_data` is never read [INFO] [stdout] --> src/comment.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Comment { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 5 | pub character_data: CharacterData [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `length` is never read [INFO] [stdout] --> src/character_data.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct CharacterData { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 5 | pub data: DOMString, [INFO] [stdout] 6 | pub length: usize, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/html_document_parser.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 13 | enum InsertionMode { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | InHeadNoScript, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 19 | AfterHead, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 20 | InBody, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 21 | Text, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | InTable, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 23 | InTableText, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 24 | InCaption, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 25 | InColumnGroup, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 26 | InTableBody, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 27 | InRow, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 28 | InCell, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 29 | InSelect, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 30 | InSelectInTable, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 31 | InTemplate, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 32 | AfterBody, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 33 | InFrameset, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 34 | AfterFrameset, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 35 | AfterAfterBody, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 36 | AfterAfterFrameset, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:18:28 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn substring_data(offset: u32, count: u32) -> DOMString { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `insert_a_foreign_element` is never used [INFO] [stdout] --> src/html_document_parser.rs:271:8 [INFO] [stdout] | [INFO] [stdout] 46 | impl HTMLDocumentParser { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 271 | fn insert_a_foreign_element(&mut self, tag_name: String) -> WeakNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peekNext` should have a snake case name [INFO] [stdout] --> src/lexer.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn peekNext(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `peek_next` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/character_data.rs:18:41 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn substring_data(offset: u32, count: u32) -> DOMString { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:24:25 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn append_data(data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:30:25 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn insert_data(offset: u32, data: DOMString) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `rewindAndPeek` should have a snake case name [INFO] [stdout] --> src/lexer.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn rewindAndPeek(&mut self, amount: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `rewind_and_peek` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:30:38 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn insert_data(offset: u32, data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeType` should have a snake case name [INFO] [stdout] --> src/node.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub nodeType: NodeType, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `node_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/character_data.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeName` should have a snake case name [INFO] [stdout] --> src/node.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | nodeName: DOMString, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `node_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/character_data.rs:36:39 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `baseURI` should have a snake case name [INFO] [stdout] --> src/node.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | baseURI: USVString, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `base_uri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isConnected` should have a snake case name [INFO] [stdout] --> src/node.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | isConnected: bool, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `is_connected` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/character_data.rs:36:51 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn replace_data(offset: u32, count: u32, data: DOMString) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `ownerDocument` should have a snake case name [INFO] [stdout] --> src/node.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub ownerDocument: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `owner_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `parentNode` should have a snake case name [INFO] [stdout] --> src/node.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub parentNode: Option, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `parent_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `childNodes` should have a snake case name [INFO] [stdout] --> src/node.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub childNodes: Children, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `child_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `firstChild` should have a snake case name [INFO] [stdout] --> src/node.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | firstChild: Weak>, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `first_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `lastChild` should have a snake case name [INFO] [stdout] --> src/node.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | lastChild: Weak>, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `last_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `previousSibling` should have a snake case name [INFO] [stdout] --> src/node.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | previousSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `previous_sibling` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextSibling` should have a snake case name [INFO] [stdout] --> src/node.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | nextSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `next_sibling` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeValue` should have a snake case name [INFO] [stdout] --> src/node.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | nodeValue: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `node_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `textContent` should have a snake case name [INFO] [stdout] --> src/node.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | textContent: Option, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `text_content` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `namespace_URI` should have a snake case name [INFO] [stdout] --> src/node.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | namespace_URI: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `namespace_uri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `classList` should have a snake case name [INFO] [stdout] --> src/node.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | classList: DOMTokenList, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_list` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `localName` should have a snake case name [INFO] [stdout] --> src/html_document_parser.rs:330:13 [INFO] [stdout] | [INFO] [stdout] 330 | let localName = tag_name.clone(); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `local_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `adjusted_insertion_location` [INFO] [stdout] --> src/html_document_parser.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | let adjusted_insertion_location = &self.appropriate_place_for_inserting_a_node(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_adjusted_insertion_location` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `namespace` [INFO] [stdout] --> src/html_document_parser.rs:340:77 [INFO] [stdout] | [INFO] [stdout] 340 | ...e, local_name: DOMString, namespace: Option, prefix: Option, is: Option, synchronous_custom_elements : bool) -... [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_namespace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prefix` [INFO] [stdout] --> src/html_document_parser.rs:340:104 [INFO] [stdout] | [INFO] [stdout] 340 | ..., namespace: Option, prefix: Option, is: Option, synchronous_custom_elements : bool) -> RefNode { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prefix` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is` [INFO] [stdout] --> src/html_document_parser.rs:340:128 [INFO] [stdout] | [INFO] [stdout] 340 | ...String>, prefix: Option, is: Option, synchronous_custom_elements : bool) -> RefNode { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_is` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `synchronous_custom_elements` [INFO] [stdout] --> src/html_document_parser.rs:340:148 [INFO] [stdout] | [INFO] [stdout] 340 | ...tring>, synchronous_custom_elements : bool) -> RefNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_synchronous_custom_elements` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `source_html_file_path` is never read [INFO] [stdout] --> src/main.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | let mut source_html_file_path: String = String::from(""); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `codepoints` is never read [INFO] [stdout] --> src/tokenizer.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 13 | struct NamedCharacterReferenceObject { [INFO] [stdout] | ----------------------------- field in this struct [INFO] [stdout] 14 | character_reference: String, [INFO] [stdout] 15 | codepoints: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `current_html_token` is never read [INFO] [stdout] --> src/tokenizer.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Tokenizer { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 31 | current_html_token: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peekNext` is never used [INFO] [stdout] --> src/lexer.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Lexer { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn peekNext(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/node.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum NodeType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 8 | ELEMENT_NODE, [INFO] [stdout] 9 | ATTRIBUTE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 10 | TEXT_NODE, [INFO] [stdout] 11 | CDATA_SECTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | ENTITY_REFERENCE_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | ENTITY_NODE, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 14 | PROCESSING_INSTRUCTION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | DOCUMENT_FRAGMENT_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | NOTATION_NODE, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/node.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Node { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | nodeName: DOMString, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 27 | baseURI: USVString, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 28 | isConnected: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | firstChild: Weak>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 33 | lastChild: Weak>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 34 | previousSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 35 | nextSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 36 | nodeValue: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 37 | textContent: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `public_id`, and `system_id` are never read [INFO] [stdout] --> src/node.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct DocumentType { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 52 | pub name: DOMString, [INFO] [stdout] | ^^^^ [INFO] [stdout] 53 | pub public_id: DOMString, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 54 | pub system_id: DOMString, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/node.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct Element { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 73 | namespace_URI: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 74 | prefix: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 75 | local_name: DOMString, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 76 | tag_name: DOMString, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 77 | id: DOMString, [INFO] [stdout] | ^^ [INFO] [stdout] 78 | class_list: DOMString, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 79 | slot: DOMString, [INFO] [stdout] | ^^^^ [INFO] [stdout] 80 | classList: DOMTokenList, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 81 | attributes: NamedNodeMap, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HTMLElement` is never constructed [INFO] [stdout] --> src/node.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 102 | pub struct HTMLElement { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/node.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | Comment(Comment), [INFO] [stdout] | ------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 144 - Comment(Comment), [INFO] [stdout] 144 + Comment(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/node.rs:146:18 [INFO] [stdout] | [INFO] [stdout] 146 | DocumentType(DocumentType), [INFO] [stdout] | ------------ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 146 - DocumentType(DocumentType), [INFO] [stdout] 146 + DocumentType(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/node.rs:147:13 [INFO] [stdout] | [INFO] [stdout] 147 | Element(Element), [INFO] [stdout] | ------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 147 - Element(Element), [INFO] [stdout] 147 + Element(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CharacterData` is never constructed [INFO] [stdout] --> src/node.rs:148:5 [INFO] [stdout] | [INFO] [stdout] 143 | pub enum NodeData { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 148 | CharacterData(CharacterData), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `character_data` is never read [INFO] [stdout] --> src/comment.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Comment { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 5 | pub character_data: CharacterData [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `length` is never read [INFO] [stdout] --> src/character_data.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct CharacterData { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 5 | pub data: DOMString, [INFO] [stdout] 6 | pub length: usize, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/html_document_parser.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 13 | enum InsertionMode { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | InHeadNoScript, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 19 | AfterHead, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 20 | InBody, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 21 | Text, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | InTable, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 23 | InTableText, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 24 | InCaption, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 25 | InColumnGroup, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 26 | InTableBody, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 27 | InRow, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 28 | InCell, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 29 | InSelect, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 30 | InSelectInTable, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 31 | InTemplate, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 32 | AfterBody, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 33 | InFrameset, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 34 | AfterFrameset, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 35 | AfterAfterBody, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 36 | AfterAfterFrameset, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `insert_a_foreign_element` is never used [INFO] [stdout] --> src/html_document_parser.rs:271:8 [INFO] [stdout] | [INFO] [stdout] 46 | impl HTMLDocumentParser { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 271 | fn insert_a_foreign_element(&mut self, tag_name: String) -> WeakNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peekNext` should have a snake case name [INFO] [stdout] --> src/lexer.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn peekNext(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `peek_next` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `rewindAndPeek` should have a snake case name [INFO] [stdout] --> src/lexer.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn rewindAndPeek(&mut self, amount: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `rewind_and_peek` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeType` should have a snake case name [INFO] [stdout] --> src/node.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub nodeType: NodeType, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `node_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeName` should have a snake case name [INFO] [stdout] --> src/node.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | nodeName: DOMString, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `node_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `baseURI` should have a snake case name [INFO] [stdout] --> src/node.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | baseURI: USVString, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `base_uri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `isConnected` should have a snake case name [INFO] [stdout] --> src/node.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | isConnected: bool, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `is_connected` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `ownerDocument` should have a snake case name [INFO] [stdout] --> src/node.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub ownerDocument: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `owner_document` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `parentNode` should have a snake case name [INFO] [stdout] --> src/node.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub parentNode: Option, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `parent_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `childNodes` should have a snake case name [INFO] [stdout] --> src/node.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub childNodes: Children, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `child_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `firstChild` should have a snake case name [INFO] [stdout] --> src/node.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | firstChild: Weak>, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `first_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `lastChild` should have a snake case name [INFO] [stdout] --> src/node.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | lastChild: Weak>, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `last_child` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `previousSibling` should have a snake case name [INFO] [stdout] --> src/node.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | previousSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `previous_sibling` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nextSibling` should have a snake case name [INFO] [stdout] --> src/node.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | nextSibling: Weak>, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `next_sibling` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `nodeValue` should have a snake case name [INFO] [stdout] --> src/node.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | nodeValue: Option, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `node_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `textContent` should have a snake case name [INFO] [stdout] --> src/node.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | textContent: Option, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `text_content` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `namespace_URI` should have a snake case name [INFO] [stdout] --> src/node.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | namespace_URI: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `namespace_uri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `classList` should have a snake case name [INFO] [stdout] --> src/node.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | classList: DOMTokenList, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_list` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `localName` should have a snake case name [INFO] [stdout] --> src/html_document_parser.rs:330:13 [INFO] [stdout] | [INFO] [stdout] 330 | let localName = tag_name.clone(); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `local_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.39s [INFO] running `Command { std: "docker" "inspect" "7767d4e0d64e266f3f56878ac80d9face4dc393aec5fd8e13d09601f8da67b07", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7767d4e0d64e266f3f56878ac80d9face4dc393aec5fd8e13d09601f8da67b07", kill_on_drop: false }` [INFO] [stdout] 7767d4e0d64e266f3f56878ac80d9face4dc393aec5fd8e13d09601f8da67b07