[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#93086cfebfccb79083c59d0d3b2052944bba643c for pr-146440-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkhaliq97%2Frust-web-engine" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-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-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/khaliq97/rust-web-engine on toolchain 93086cfebfccb79083c59d0d3b2052944bba643c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+93086cfebfccb79083c59d0d3b2052944bba643c" "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" "+93086cfebfccb79083c59d0d3b2052944bba643c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+93086cfebfccb79083c59d0d3b2052944bba643c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fa36031384258f820bfe6ba5ea7ff5e155a8e9e379faac8cbdc1207fd6f32a6d
[INFO] running `Command { std: "docker" "start" "-a" "fa36031384258f820bfe6ba5ea7ff5e155a8e9e379faac8cbdc1207fd6f32a6d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fa36031384258f820bfe6ba5ea7ff5e155a8e9e379faac8cbdc1207fd6f32a6d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fa36031384258f820bfe6ba5ea7ff5e155a8e9e379faac8cbdc1207fd6f32a6d", kill_on_drop: false }`
[INFO] [stdout] fa36031384258f820bfe6ba5ea7ff5e155a8e9e379faac8cbdc1207fd6f32a6d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+93086cfebfccb79083c59d0d3b2052944bba643c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 23d236164cc99307d648f2ab3fe4563bf6bb427d54e62ca851af1de820157f8e
[INFO] running `Command { std: "docker" "start" "-a" "23d236164cc99307d648f2ab3fe4563bf6bb427d54e62ca851af1de820157f8e", 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)]` (part of `#[warn(nonstandard_style)]`) 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)]` (part of `#[warn(unused)]`) 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 `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)]` (part of `#[warn(nonstandard_style)]`) 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 `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: 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: 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)]` (part of `#[warn(unused)]`) 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: 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)]` (part of `#[warn(unused)]`) on by default
[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: 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: 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 | ...c::new(RefCell::new(JSValue::Boolean(false))))));;
[INFO] [stdout]     |                                                     ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[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)]` (part of `#[warn(unused)]`) 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 | ...c::new(RefCell::new(JSValue::Boolean(false))))));;
[INFO] [stdout]     |                                                     ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) 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 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)]` (part of `#[warn(unused)]`) 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: `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)]` (part of `#[warn(unused)]`) 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<char> = 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: `chars`
[INFO] [stdout]    --> src/scanner.rs:214:13
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let chars: Vec<char> = 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)]` (part of `#[warn(unused)]`) on by default
[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)]` (part of `#[warn(unused)]`) 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: `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: `receiver`
[INFO] [stdout]    --> src/interpreter.rs:136:112
[INFO] [stdout]     |
[INFO] [stdout] 136 | ...: Rc<RefCell<JSValue>>, receiver: &Rc<RefCell<JSObject>>, 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: `own_desc`
[INFO] [stdout]    --> src/interpreter.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 | ...   let own_desc = PropertyDescriptorType::PropertyDescriptor(PropertyDescriptor { property: Some(PropertyType::DataProperty(Data...
[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 | ...: Rc<RefCell<JSValue>>, receiver: &Rc<RefCell<JSObject>>, 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: `own_desc`
[INFO] [stdout]    --> src/interpreter.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 | ...   let own_desc = PropertyDescriptorType::PropertyDescriptor(PropertyDescriptor { property: Some(PropertyType::DataProperty(Data...
[INFO] [stdout]     |           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_own_desc`
[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: `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<RefCell<JSObject>>) -> CompletionRecord {
[INFO] [stdout]     |                                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[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<RefCell<JSObject>>) -> 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: `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: `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: `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: `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: `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: `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: `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: `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: `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: `throw`
[INFO] [stdout]     --> src/interpreter.rs:1177:99
[INFO] [stdout]      |
[INFO] [stdout] 1177 |     pub fn set(object: &Rc<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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: `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<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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: `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: `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: `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: `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: `preferred_type`
[INFO] [stdout]     --> src/interpreter.rs:1606:50
[INFO] [stdout]      |
[INFO] [stdout] 1606 |     fn to_primitive(value: Rc<RefCell<JSValue>>, preferred_type: Option<JSValue>) -> CompletionRecord {
[INFO] [stdout]      |                                                  ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preferred_type`
[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: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: `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: 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: `preferred_type`
[INFO] [stdout]     --> src/interpreter.rs:1606:50
[INFO] [stdout]      |
[INFO] [stdout] 1606 |     fn to_primitive(value: Rc<RefCell<JSValue>>, preferred_type: Option<JSValue>) -> CompletionRecord {
[INFO] [stdout]      |                                                  ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preferred_type`
[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: 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: `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: `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: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: 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: 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<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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: 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 `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<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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<RefCell<JSValue>>) -> 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<RefCell<JSValue>>) -> 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: 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<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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<RefCell<JSObject>>, key: Rc<PropertyKey>, value: Rc<RefCell<JSValue>>, 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<RefCell<JSValue>>) -> 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<RefCell<JSValue>>) -> 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] error: 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]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout]     = note: `#[deny(unused_unconstructable_pub_structs)]` (part of `#[deny(unused)]`) on by default
[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<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 33 |     lastChild: Weak<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 34 |     previousSibling: Weak<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 35 |     nextSibling: Weak<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 36 |     nodeValue: Option<DOMString>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 37 |     textContent: Option<DOMString>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: 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]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout]     = note: `#[deny(unused_unconstructable_pub_structs)]` (part of `#[deny(unused)]`) on by default
[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<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 33 |     lastChild: Weak<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 34 |     previousSibling: Weak<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 35 |     nextSibling: Weak<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 36 |     nodeValue: Option<DOMString>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 37 |     textContent: Option<DOMString>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) 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<DOMString>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 74 |     prefix: Option<DOMString>,
[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: 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<DOMString>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 74 |     prefix: Option<DOMString>,
[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 `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<Statement>,
[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 `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 `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<FormalParameter>,
[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 `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<ExpressionStatement>,
[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 `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<Statement>,
[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 `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<RefCell<EnvironmentRecord>>,
[INFO] [stdout] 24 |     variable_environment_record:  Rc<RefCell<EnvironmentRecord>>
[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<FormalParameter>,
[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: 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<ExpressionStatement>,
[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<RefCell<EnvironmentRecord>>,
[INFO] [stdout] 24 |     variable_environment_record:  Rc<RefCell<EnvironmentRecord>>
[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: 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: 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<fn(key: PropertyKey, receiver: &JSValue) -> JSObject>,
[INFO] [stdout] 72 |     set: Option<fn(key: PropertyKey, value: JSValue, receiver: &JSValue) -> 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 `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: 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: 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<fn(key: PropertyKey, receiver: &JSValue) -> JSObject>,
[INFO] [stdout] 72 |     set: Option<fn(key: PropertyKey, value: JSValue, receiver: &JSValue) -> 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<Rc<JSObject>>,
[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: 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<Rc<JSObject>>,
[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: 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: 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: 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<RefCell<DeclarativeEnvironmentRecord>>),
[INFO] [stdout] 474 |     FunctionEnvironmentRecord(FunctionEnvironmentRecord),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 475 |     ObjectEnvironmentRecord(Rc<RefCell<ObjectEnvironmentRecord>>),
[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: 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<RefCell<DeclarativeEnvironmentRecord>>),
[INFO] [stdout] 474 |     FunctionEnvironmentRecord(FunctionEnvironmentRecord),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 475 |     ObjectEnvironmentRecord(Rc<RefCell<ObjectEnvironmentRecord>>),
[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: 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<FunctionEnvironmentRecord>,
[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: 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<FunctionEnvironmentRecord>,
[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: 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<JSValue>,
[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<JSObject>,
[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: 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<JSValue>,
[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<JSObject>,
[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<RefCell<JSObject>>,
[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 `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<RefCell<JSObject>>,
[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<Rc<RefCell<ObjectEnvironmentRecord>>>,
[INFO] [stdout] 821 |     global_this_value: Option<Box<JSObject>>,
[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: 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<Rc<RefCell<ObjectEnvironmentRecord>>>,
[INFO] [stdout] 821 |     global_this_value: Option<Box<JSObject>>,
[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<JSValue>),
[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: 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<JSValue>),
[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<Box<JSValue>>,
[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: 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<Box<JSValue>>,
[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<String>
[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: 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: 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: 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<String>
[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<JSObject>, mut additional_internal_slots: Vec<ObjectInternalSlot>) -> JSObj...
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1185 |     fn make_basic_object(&self, mut internal_slots: Vec<ObjectInternalSlot>) -> 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: 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<JSObject>, mut additional_internal_slots: Vec<ObjectInternalSlot>) -> JSObj...
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1185 |     fn make_basic_object(&self, mut internal_slots: Vec<ObjectInternalSlot>) -> 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<char> { 
[INFO] [stdout]    |            ^^^^^^^^ help: convert the identifier to snake case: `peek_next`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) 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<char> { 
[INFO] [stdout]    |            ^^^^^^^^^^^^^ help: convert the identifier to snake case: `rewind_and_peek`
[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<char> { 
[INFO] [stdout]    |            ^^^^^^^^ help: convert the identifier to snake case: `peek_next`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) 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<char> { 
[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 `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 `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 `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 `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 `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 `ownerDocument` should have a snake case name
[INFO] [stdout]   --> src/node.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub ownerDocument: Option<WeakNode>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `owner_document`
[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 `parentNode` should have a snake case name
[INFO] [stdout]   --> src/node.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub parentNode: Option<WeakNode>,
[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 `ownerDocument` should have a snake case name
[INFO] [stdout]   --> src/node.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub ownerDocument: Option<WeakNode>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `owner_document`
[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<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `first_child`
[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<WeakNode>,
[INFO] [stdout]    |         ^^^^^^^^^^ help: convert the identifier to snake case: `parent_node`
[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<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to snake case: `last_child`
[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 `previousSibling` should have a snake case name
[INFO] [stdout]   --> src/node.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     previousSibling: Weak<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `previous_sibling`
[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<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `first_child`
[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<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to snake case: `next_sibling`
[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<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to snake case: `last_child`
[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<DOMString>,
[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<DOMString>,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to snake case: `text_content`
[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<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `previous_sibling`
[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<DOMString>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `namespace_uri`
[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<Option<Child>>,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to snake case: `next_sibling`
[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: structure field `nodeValue` should have a snake case name
[INFO] [stdout]   --> src/node.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     nodeValue: Option<DOMString>,
[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<DOMString>,
[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<DOMString>,
[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: 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] [stderr] error: could not compile `web_engine` (lib) due to 1 previous error; 124 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `web_engine` (lib test) due to 1 previous error; 124 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "23d236164cc99307d648f2ab3fe4563bf6bb427d54e62ca851af1de820157f8e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "23d236164cc99307d648f2ab3fe4563bf6bb427d54e62ca851af1de820157f8e", kill_on_drop: false }`
[INFO] [stdout] 23d236164cc99307d648f2ab3fe4563bf6bb427d54e62ca851af1de820157f8e
