[INFO] cloning repository https://github.com/mjh316/sunshine
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mjh316/sunshine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmjh316%2Fsunshine", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmjh316%2Fsunshine'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 40f7da8a32e75709ba7394077e7bd0ce3de1b928
[INFO] checking mjh316/sunshine against try#e117153a45c546e883c1f91d82611775fcaeffe0 for pr-146470
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmjh316%2Fsunshine" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/mjh316/sunshine
[INFO] finished tweaking git repo https://github.com/mjh316/sunshine
[INFO] tweaked toml for git repo https://github.com/mjh316/sunshine written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mjh316/sunshine on toolchain e117153a45c546e883c1f91d82611775fcaeffe0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e117153a45c546e883c1f91d82611775fcaeffe0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mjh316/sunshine 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" "+e117153a45c546e883c1f91d82611775fcaeffe0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_json v1.0.118
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+e117153a45c546e883c1f91d82611775fcaeffe0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c25ff4d046b6754c6634247a4b4dc3ae9db49ff29ad73b8c581c47fb46f29efe
[INFO] running `Command { std: "docker" "start" "-a" "c25ff4d046b6754c6634247a4b4dc3ae9db49ff29ad73b8c581c47fb46f29efe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c25ff4d046b6754c6634247a4b4dc3ae9db49ff29ad73b8c581c47fb46f29efe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c25ff4d046b6754c6634247a4b4dc3ae9db49ff29ad73b8c581c47fb46f29efe", kill_on_drop: false }`
[INFO] [stdout] c25ff4d046b6754c6634247a4b4dc3ae9db49ff29ad73b8c581c47fb46f29efe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+e117153a45c546e883c1f91d82611775fcaeffe0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1c22393e1cfc87d8162aac9ee1f8f08d93b650df3e5552ef3f6e01785f23adfe
[INFO] running `Command { std: "docker" "start" "-a" "1c22393e1cfc87d8162aac9ee1f8f08d93b650df3e5552ef3f6e01785f23adfe", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling serde v1.0.203
[INFO] [stderr]    Compiling serde_json v1.0.118
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling syn v2.0.68
[INFO] [stderr]    Compiling serde_derive v1.0.203
[INFO] [stderr]     Checking sunshine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/interpreter.rs:400:33
[INFO] [stdout]     |
[INFO] [stdout] 400 | / ...                   /**
[INFO] [stdout] 401 | | ...                    * TODO: figure out how to get this working for array fields of structs
[INFO] [stdout] 402 | | ...                    */
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 403 | / ...                   match name.as_str() {
[INFO] [stdout] 404 | | ...                       "STDLIB_ARRAY_PUSH" => {
[INFO] [stdout] 405 | | ...                           if args.len() != 1 {
[INFO] [stdout] 406 | | ...                               panic!("Expected 1 argument, got {:?}", args.len());
[INFO] [stdout] ...   |
[INFO] [stdout] 606 | | ...                   }
[INFO] [stdout]     | |_______________________- rustdoc does not generate documentation for expressions
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `/* */` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/main.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ast::{Array, Ast, Literal};
[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 doc comment
[INFO] [stdout]    --> src/interpreter.rs:400:33
[INFO] [stdout]     |
[INFO] [stdout] 400 | / ...                   /**
[INFO] [stdout] 401 | | ...                    * TODO: figure out how to get this working for array fields of structs
[INFO] [stdout] 402 | | ...                    */
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 403 | / ...                   match name.as_str() {
[INFO] [stdout] 404 | | ...                       "STDLIB_ARRAY_PUSH" => {
[INFO] [stdout] 405 | | ...                           if args.len() != 1 {
[INFO] [stdout] 406 | | ...                               panic!("Expected 1 argument, got {:?}", args.len());
[INFO] [stdout] ...   |
[INFO] [stdout] 606 | | ...                   }
[INFO] [stdout]     | |_______________________- rustdoc does not generate documentation for expressions
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `/* */` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/main.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ast::{Array, Ast, Literal};
[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: `SerializeSeq`
[INFO] [stdout]  --> src/ast.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 |     ser::{SerializeMap, SerializeSeq},
[INFO] [stdout]   |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SerializeSeq`
[INFO] [stdout]  --> src/ast.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 |     ser::{SerializeMap, SerializeSeq},
[INFO] [stdout]   |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:366:31
[INFO] [stdout]     |
[INFO] [stdout] 366 |             Ast::Call(caller, mut args) => {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:424:45
[INFO] [stdout]     |
[INFO] [stdout] 424 | ...                   let mut array = match array {
[INFO] [stdout]     |                           ----^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:465:45
[INFO] [stdout]     |
[INFO] [stdout] 465 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:500:45
[INFO] [stdout]     |
[INFO] [stdout] 500 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:534:45
[INFO] [stdout]     |
[INFO] [stdout] 534 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:366:31
[INFO] [stdout]     |
[INFO] [stdout] 366 |             Ast::Call(caller, mut args) => {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:424:45
[INFO] [stdout]     |
[INFO] [stdout] 424 | ...                   let mut array = match array {
[INFO] [stdout]     |                           ----^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:465:45
[INFO] [stdout]     |
[INFO] [stdout] 465 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:500:45
[INFO] [stdout]     |
[INFO] [stdout] 500 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter.rs:534:45
[INFO] [stdout]     |
[INFO] [stdout] 534 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> src/parser.rs:211:21
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 let op = self.eat(self.peekType().unwrap()).value;
[INFO] [stdout]     |                     ^^ help: if this is intentional, prefix it with an underscore: `_op`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `standardLibraryFunctions` should have a snake case name
[INFO] [stdout]   --> src/main.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let standardLibraryFunctions: Rc<
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `standard_library_functions`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]   --> src/main.rs:76:17
[INFO] [stdout]    |
[INFO] [stdout] 76 |             let structScope = Rc::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `borrowedScope` should have a snake case name
[INFO] [stdout]   --> src/main.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |             let borrowedScope = Rc::clone(&scope);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: convert the identifier to snake case: `borrowed_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `borrowedStandardLibraryFunctions` should have a snake case name
[INFO] [stdout]   --> src/main.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |             let borrowedStandardLibraryFunctions = Rc::clone(&standardLibraryFunctions);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `borrowed_standard_library_functions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `borrowedStructScope` should have a snake case name
[INFO] [stdout]   --> src/main.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |             let borrowedStructScope = Rc::clone(&structScope);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `borrowed_struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `standardLibraryFunctions` should have a snake case name
[INFO] [stdout]   --> src/main.rs:86:25
[INFO] [stdout]    |
[INFO] [stdout] 86 |                     let standardLibraryFunctions = Rc::clone(&borrowedStandardLibraryFunctions);
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `standard_library_functions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]   --> src/main.rs:87:25
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     let structScope = Rc::clone(&borrowedStructScope);
[INFO] [stdout]    |                         ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `stateMap` should have a snake case name
[INFO] [stdout]   --> src/ast.rs:81:25
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 let mut stateMap = serializer.serialize_map(Some(2))?;
[INFO] [stdout]    |                         ^^^^^^^^ help: convert the identifier to snake case: `state_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `toPrint` should have a snake case name
[INFO] [stdout]   --> src/interpreter.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn toPrint(
[INFO] [stdout]    |            ^^^^^^^ help: convert the identifier to snake case: `to_print`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]   --> src/interpreter.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         functionScope: FunctionScope,
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]   --> src/interpreter.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         structScope: StructScope,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `isExpr` should have a snake case name
[INFO] [stdout]   --> src/interpreter.rs:98:40
[INFO] [stdout]    |
[INFO] [stdout] 98 |             Ast::Get(caller, property, isExpr) => {
[INFO] [stdout]    |                                        ^^^^^^ help: convert the identifier to snake case: `is_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         functionScope: FunctionScope,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |         structScope: StructScope,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:125:17
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let mut retScope = scope.clone();
[INFO] [stdout]     |                 ^^^^^^^^ help: convert the identifier to snake case: `ret_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `newScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:131:18
[INFO] [stdout]     |
[INFO] [stdout] 131 |             let (newScope, _ret) = Interpreter::execute(
[INFO] [stdout]     |                  ^^^^^^^^ help: convert the identifier to snake case: `new_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `inScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:159:8
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn inScope(scope: Scope, name: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `in_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isFuncInScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:163:8
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn isFuncInScope(functionScope: FunctionScope, name: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^ help: convert the identifier to snake case: `is_func_in_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:163:22
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn isFuncInScope(functionScope: FunctionScope, name: String) -> bool {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:164:13
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let functionScope = functionScope.borrow();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isStructInScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:168:8
[INFO] [stdout]     |
[INFO] [stdout] 168 |     fn isStructInScope(structScope: StructScope, name: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `is_struct_in_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:168:24
[INFO] [stdout]     |
[INFO] [stdout] 168 |     fn isStructInScope(structScope: StructScope, name: String) -> bool {
[INFO] [stdout]     |                        ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 175 |         functionScope: FunctionScope,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         structScope: StructScope,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `aBool` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:277:64
[INFO] [stdout]     |
[INFO] [stdout] 277 | ...                   content: TokenContentType::Boolean(aBool),
[INFO] [stdout]     |                                                          ^^^^^ help: convert the identifier to snake case: `a_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bBool` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:279:64
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...                   content: TokenContentType::Boolean(bBool),
[INFO] [stdout]     |                                                          ^^^^^ help: convert the identifier to snake case: `b_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `aBool` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:290:64
[INFO] [stdout]     |
[INFO] [stdout] 290 | ...                   content: TokenContentType::Boolean(aBool),
[INFO] [stdout]     |                                                          ^^^^^ help: convert the identifier to snake case: `a_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bBool` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:292:64
[INFO] [stdout]     |
[INFO] [stdout] 292 | ...                   content: TokenContentType::Boolean(bBool),
[INFO] [stdout]     |                                                          ^^^^^ help: convert the identifier to snake case: `b_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `resultOfOp` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:319:21
[INFO] [stdout]     |
[INFO] [stdout] 319 |                 let resultOfOp = operations.get(&op).unwrap()(left, right);
[INFO] [stdout]     |                     ^^^^^^^^^^ help: convert the identifier to snake case: `result_of_op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScopeMap` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:344:21
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 let structScopeMap = structScope.borrow_mut();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `instanceConstructor` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:345:21
[INFO] [stdout]     |
[INFO] [stdout] 345 |                 let instanceConstructor = structScopeMap
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `instance_constructor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fieldValue` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:350:29
[INFO] [stdout]     |
[INFO] [stdout] 350 |                 for (field, fieldValue) in members {
[INFO] [stdout]     |                             ^^^^^^^^^^ help: convert the identifier to snake case: `field_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScopeCopy` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:376:21
[INFO] [stdout]     |
[INFO] [stdout] 376 |                 let functionScopeCopy = functionScope.clone();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope_copy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScopeMap` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:390:33
[INFO] [stdout]     |
[INFO] [stdout] 390 | ...                   let functionScopeMap = functionScope.borrow();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `newElement` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:411:45
[INFO] [stdout]     |
[INFO] [stdout] 411 | ...                   let newElement = args.get(0).unwrap().clone();
[INFO] [stdout]     |                           ^^^^^^^^^^ help: convert the identifier to snake case: `new_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `actualArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:465:49
[INFO] [stdout]     |
[INFO] [stdout] 465 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: convert the identifier to snake case: `actual_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `actualArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:500:49
[INFO] [stdout]     |
[INFO] [stdout] 500 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: convert the identifier to snake case: `actual_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `actualArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:534:49
[INFO] [stdout]     |
[INFO] [stdout] 534 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: convert the identifier to snake case: `actual_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `underLyingArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:542:45
[INFO] [stdout]     |
[INFO] [stdout] 542 | ...                   let underLyingArray = actualArray.content.clone();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `under_lying_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `sortedArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:550:49
[INFO] [stdout]     |
[INFO] [stdout] 550 | ...                   let mut sortedArray = underLyingArray.clone();
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: convert the identifier to snake case: `sorted_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `variableVec` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:687:37
[INFO] [stdout]     |
[INFO] [stdout] 687 | ...                   let variableVec = if matches!(*orig_caller, Ast::Var(_, _)) {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `variable_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `variableVec` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:703:37
[INFO] [stdout]     |
[INFO] [stdout] 703 | ...                   let variableVec = if matches!(*orig_caller, Ast::Var(_, _)) {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `variable_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `variableVec` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:719:37
[INFO] [stdout]     |
[INFO] [stdout] 719 | ...                   let variableVec = if matches!(*orig_caller, Ast::Var(_, _)) {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `variable_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `variableVec` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:736:37
[INFO] [stdout]     |
[INFO] [stdout] 736 | ...                   let variableVec = if matches!(*orig_caller, Ast::Var(_, _)) {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `variable_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `propertyKey` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:759:29
[INFO] [stdout]     |
[INFO] [stdout] 759 |                         let propertyKey = match property {
[INFO] [stdout]     |                             ^^^^^^^^^^^ help: convert the identifier to snake case: `property_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `propertyKey` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:779:37
[INFO] [stdout]     |
[INFO] [stdout] 779 | ...                   let propertyKey = match property {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `property_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:823:9
[INFO] [stdout]     |
[INFO] [stdout] 823 |         _functionScope: FunctionScope,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `_function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_structScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:824:9
[INFO] [stdout]     |
[INFO] [stdout] 824 |         _structScope: StructScope,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `_struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retValue` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:827:17
[INFO] [stdout]     |
[INFO] [stdout] 827 |         let mut retValue = None;
[INFO] [stdout]     |                 ^^^^^^^^ help: convert the identifier to snake case: `ret_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:828:13
[INFO] [stdout]     |
[INFO] [stdout] 828 |         let retScope = _scope.clone();
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `ret_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retFunctionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:829:13
[INFO] [stdout]     |
[INFO] [stdout] 829 |         let retFunctionScope = _functionScope.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `ret_function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retStructScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:830:13
[INFO] [stdout]     |
[INFO] [stdout] 830 |         let retStructScope = _structScope.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `ret_struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:862:21
[INFO] [stdout]     |
[INFO] [stdout] 862 |                 let functionScope = Rc::clone(&retFunctionScope);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `valueScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:863:21
[INFO] [stdout]     |
[INFO] [stdout] 863 |                 let valueScope = Rc::clone(&retScope);
[INFO] [stdout]     |                     ^^^^^^^^^^ help: convert the identifier to snake case: `value_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structureScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:864:21
[INFO] [stdout]     |
[INFO] [stdout] 864 |                 let structureScope = Rc::clone(&retStructScope);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `structure_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionBody` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:865:21
[INFO] [stdout]     |
[INFO] [stdout] 865 |                 let functionBody = body.clone();
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: convert the identifier to snake case: `function_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `localScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:871:25
[INFO] [stdout]     |
[INFO] [stdout] 871 |                     let localScope = valueScope.clone();
[INFO] [stdout]     |                         ^^^^^^^^^^ help: convert the identifier to snake case: `local_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:883:25
[INFO] [stdout]     |
[INFO] [stdout] 883 |                     let functionScope = Rc::clone(&functionScope);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `localScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:972:21
[INFO] [stdout]     |
[INFO] [stdout] 972 |                 let localScope = retScope.clone();
[INFO] [stdout]     |                     ^^^^^^^^^^ help: convert the identifier to snake case: `local_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rangeBegin` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:974:25
[INFO] [stdout]     |
[INFO] [stdout] 974 |                 let mut rangeBegin = 0;
[INFO] [stdout]     |                         ^^^^^^^^^^ help: convert the identifier to snake case: `range_begin`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rangeEnd` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:975:25
[INFO] [stdout]     |
[INFO] [stdout] 975 |                 let mut rangeEnd = 0;
[INFO] [stdout]     |                         ^^^^^^^^ help: convert the identifier to snake case: `range_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rangeBeginAst` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:977:21
[INFO] [stdout]     |
[INFO] [stdout] 977 |                 let rangeBeginAst = Interpreter::evaluate(
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `range_begin_ast`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rangeEndAst` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1006:21
[INFO] [stdout]      |
[INFO] [stdout] 1006 |                 let rangeEndAst = Interpreter::evaluate(
[INFO] [stdout]      |                     ^^^^^^^^^^^ help: convert the identifier to snake case: `range_end_ast`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `copyId` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1037:25
[INFO] [stdout]      |
[INFO] [stdout] 1037 |                     let copyId = id.clone();
[INFO] [stdout]      |                         ^^^^^^ help: convert the identifier to snake case: `copy_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `loopVar` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1038:25
[INFO] [stdout]      |
[INFO] [stdout] 1038 |                     let loopVar = localScope.borrow_mut().get(&copyId).unwrap().clone();
[INFO] [stdout]      |                         ^^^^^^^ help: convert the identifier to snake case: `loop_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ifBody` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1052:41
[INFO] [stdout]      |
[INFO] [stdout] 1052 |             Ast::Conditional(condition, ifBody, elseBody) => {
[INFO] [stdout]      |                                         ^^^^^^ help: convert the identifier to snake case: `if_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `elseBody` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1052:49
[INFO] [stdout]      |
[INFO] [stdout] 1052 |             Ast::Conditional(condition, ifBody, elseBody) => {
[INFO] [stdout]      |                                                 ^^^^^^^^ help: convert the identifier to snake case: `else_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `conditionEvaluated` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1053:21
[INFO] [stdout]      |
[INFO] [stdout] 1053 |                 let conditionEvaluated = Interpreter::evaluate(
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `condition_evaluated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `propertyKey` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1097:25
[INFO] [stdout]      |
[INFO] [stdout] 1097 |                     let propertyKey = match value.clone() {
[INFO] [stdout]      |                         ^^^^^^^^^^^ help: convert the identifier to snake case: `property_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `KEYWORDS` should have a snake case name
[INFO] [stdout]  --> src/lexer.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn KEYWORDS() -> HashSet<&'static str> {
[INFO] [stdout]   |    ^^^^^^^^ help: convert the identifier to snake case: `keywords`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isOperator` should have a snake case name
[INFO] [stdout]    --> src/lexer.rs:116:12
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn isOperator(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to snake case: `is_operator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isAtEnd` should have a snake case name
[INFO] [stdout]    --> src/lexer.rs:252:12
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn isAtEnd(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to snake case: `is_at_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isChar` should have a snake case name
[INFO] [stdout]    --> src/lexer.rs:282:8
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn isChar(&self, c: char) -> bool {
[INFO] [stdout]     |        ^^^^^^ help: convert the identifier to snake case: `is_char`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `peekType` should have a snake case name
[INFO] [stdout]   --> src/parser.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn peekType(&self) -> Option<TokenType> {
[INFO] [stdout]    |        ^^^^^^^^ help: convert the identifier to snake case: `peek_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `nextType` should have a snake case name
[INFO] [stdout]   --> src/parser.rs:38:24
[INFO] [stdout]    |
[INFO] [stdout] 38 |         while let Some(nextType) = self.peekType() {
[INFO] [stdout]    |                        ^^^^^^^^ help: convert the identifier to snake case: `next_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `tokenType2` should have a snake case name
[INFO] [stdout]   --> src/parser.rs:58:18
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Some(tokenType2) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: convert the identifier to snake case: `token_type2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `identifierList` should have a snake case name
[INFO] [stdout]   --> src/parser.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn identifierList(&mut self) -> Vec<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `identifier_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> src/parser.rs:211:21
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 let op = self.eat(self.peekType().unwrap()).value;
[INFO] [stdout]     |                     ^^ help: if this is intentional, prefix it with an underscore: `_op`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `nextType` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:108:21
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 let nextType = self.peekType();
[INFO] [stdout]     |                     ^^^^^^^^ help: convert the identifier to snake case: `next_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rightLeft` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:225:29
[INFO] [stdout]     |
[INFO] [stdout] 225 |                 Ast::Binary(rightLeft, rightOp, rightRight) => {
[INFO] [stdout]     |                             ^^^^^^^^^ help: convert the identifier to snake case: `right_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rightOp` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:225:40
[INFO] [stdout]     |
[INFO] [stdout] 225 |                 Ast::Binary(rightLeft, rightOp, rightRight) => {
[INFO] [stdout]     |                                        ^^^^^^^ help: convert the identifier to snake case: `right_op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rightRight` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:225:49
[INFO] [stdout]     |
[INFO] [stdout] 225 |                 Ast::Binary(rightLeft, rightOp, rightRight) => {
[INFO] [stdout]     |                                                 ^^^^^^^^^^ help: convert the identifier to snake case: `right_right`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `exprList` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:242:12
[INFO] [stdout]     |
[INFO] [stdout] 242 |     pub fn exprList(&mut self) -> Vec<Ast> {
[INFO] [stdout]     |            ^^^^^^^^ help: convert the identifier to snake case: `expr_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `peekKeyword` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:265:8
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn peekKeyword(&self, keyword: &'static str) -> Option<Token> {
[INFO] [stdout]     |        ^^^^^^^^^^^ help: convert the identifier to snake case: `peek_keyword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `nextType` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let nextType = self.peekType().unwrap();
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `next_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eatKeyword` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:278:8
[INFO] [stdout]     |
[INFO] [stdout] 278 |     fn eatKeyword(&mut self, keyword: &'static str) -> Token {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `eat_keyword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `funcStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:293:8
[INFO] [stdout]     |
[INFO] [stdout] 293 |     fn funcStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `func_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `returnStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:320:8
[INFO] [stdout]     |
[INFO] [stdout] 320 |     fn returnStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `return_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `forStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:326:8
[INFO] [stdout]     |
[INFO] [stdout] 326 |     fn forStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `for_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `whileStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:349:8
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn whileStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^ help: convert the identifier to snake case: `while_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `conditionalStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:369:8
[INFO] [stdout]     |
[INFO] [stdout] 369 |     fn conditionalStmt(&mut self, keyword: &'static str) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `conditional_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `elseKeyword` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:401:17
[INFO] [stdout]     |
[INFO] [stdout] 401 |             let elseKeyword = self.peekKeyword("else");
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `else_keyword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `elifKeyword` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:402:17
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let elifKeyword = self.peekKeyword("elif");
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `elif_keyword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assignStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:416:8
[INFO] [stdout]     |
[INFO] [stdout] 416 |     fn assignStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `assign_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `structStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:440:8
[INFO] [stdout]     |
[INFO] [stdout] 440 |     fn structStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `struct_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `standardLibraryFunctions` should have a snake case name
[INFO] [stdout]   --> src/main.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let standardLibraryFunctions: Rc<
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `standard_library_functions`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]   --> src/main.rs:76:17
[INFO] [stdout]    |
[INFO] [stdout] 76 |             let structScope = Rc::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `borrowedScope` should have a snake case name
[INFO] [stdout]   --> src/main.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |             let borrowedScope = Rc::clone(&scope);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: convert the identifier to snake case: `borrowed_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `borrowedStandardLibraryFunctions` should have a snake case name
[INFO] [stdout]   --> src/main.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |             let borrowedStandardLibraryFunctions = Rc::clone(&standardLibraryFunctions);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `borrowed_standard_library_functions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `borrowedStructScope` should have a snake case name
[INFO] [stdout]   --> src/main.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |             let borrowedStructScope = Rc::clone(&structScope);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `borrowed_struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `standardLibraryFunctions` should have a snake case name
[INFO] [stdout]   --> src/main.rs:86:25
[INFO] [stdout]    |
[INFO] [stdout] 86 |                     let standardLibraryFunctions = Rc::clone(&borrowedStandardLibraryFunctions);
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `standard_library_functions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]   --> src/main.rs:87:25
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     let structScope = Rc::clone(&borrowedStructScope);
[INFO] [stdout]    |                         ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `stateMap` should have a snake case name
[INFO] [stdout]   --> src/ast.rs:81:25
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 let mut stateMap = serializer.serialize_map(Some(2))?;
[INFO] [stdout]    |                         ^^^^^^^^ help: convert the identifier to snake case: `state_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `toPrint` should have a snake case name
[INFO] [stdout]   --> src/interpreter.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn toPrint(
[INFO] [stdout]    |            ^^^^^^^ help: convert the identifier to snake case: `to_print`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]   --> src/interpreter.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         functionScope: FunctionScope,
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]   --> src/interpreter.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         structScope: StructScope,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `isExpr` should have a snake case name
[INFO] [stdout]   --> src/interpreter.rs:98:40
[INFO] [stdout]    |
[INFO] [stdout] 98 |             Ast::Get(caller, property, isExpr) => {
[INFO] [stdout]    |                                        ^^^^^^ help: convert the identifier to snake case: `is_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         functionScope: FunctionScope,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |         structScope: StructScope,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:125:17
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let mut retScope = scope.clone();
[INFO] [stdout]     |                 ^^^^^^^^ help: convert the identifier to snake case: `ret_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `newScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:131:18
[INFO] [stdout]     |
[INFO] [stdout] 131 |             let (newScope, _ret) = Interpreter::execute(
[INFO] [stdout]     |                  ^^^^^^^^ help: convert the identifier to snake case: `new_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `inScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:159:8
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn inScope(scope: Scope, name: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `in_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isFuncInScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:163:8
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn isFuncInScope(functionScope: FunctionScope, name: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^ help: convert the identifier to snake case: `is_func_in_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:163:22
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn isFuncInScope(functionScope: FunctionScope, name: String) -> bool {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:164:13
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let functionScope = functionScope.borrow();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isStructInScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:168:8
[INFO] [stdout]     |
[INFO] [stdout] 168 |     fn isStructInScope(structScope: StructScope, name: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `is_struct_in_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:168:24
[INFO] [stdout]     |
[INFO] [stdout] 168 |     fn isStructInScope(structScope: StructScope, name: String) -> bool {
[INFO] [stdout]     |                        ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 175 |         functionScope: FunctionScope,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         structScope: StructScope,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `aBool` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:277:64
[INFO] [stdout]     |
[INFO] [stdout] 277 | ...                   content: TokenContentType::Boolean(aBool),
[INFO] [stdout]     |                                                          ^^^^^ help: convert the identifier to snake case: `a_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bBool` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:279:64
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...                   content: TokenContentType::Boolean(bBool),
[INFO] [stdout]     |                                                          ^^^^^ help: convert the identifier to snake case: `b_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `aBool` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:290:64
[INFO] [stdout]     |
[INFO] [stdout] 290 | ...                   content: TokenContentType::Boolean(aBool),
[INFO] [stdout]     |                                                          ^^^^^ help: convert the identifier to snake case: `a_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bBool` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:292:64
[INFO] [stdout]     |
[INFO] [stdout] 292 | ...                   content: TokenContentType::Boolean(bBool),
[INFO] [stdout]     |                                                          ^^^^^ help: convert the identifier to snake case: `b_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `resultOfOp` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:319:21
[INFO] [stdout]     |
[INFO] [stdout] 319 |                 let resultOfOp = operations.get(&op).unwrap()(left, right);
[INFO] [stdout]     |                     ^^^^^^^^^^ help: convert the identifier to snake case: `result_of_op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structScopeMap` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:344:21
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 let structScopeMap = structScope.borrow_mut();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `struct_scope_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `instanceConstructor` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:345:21
[INFO] [stdout]     |
[INFO] [stdout] 345 |                 let instanceConstructor = structScopeMap
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `instance_constructor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fieldValue` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:350:29
[INFO] [stdout]     |
[INFO] [stdout] 350 |                 for (field, fieldValue) in members {
[INFO] [stdout]     |                             ^^^^^^^^^^ help: convert the identifier to snake case: `field_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScopeCopy` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:376:21
[INFO] [stdout]     |
[INFO] [stdout] 376 |                 let functionScopeCopy = functionScope.clone();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope_copy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScopeMap` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:390:33
[INFO] [stdout]     |
[INFO] [stdout] 390 | ...                   let functionScopeMap = functionScope.borrow();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `newElement` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:411:45
[INFO] [stdout]     |
[INFO] [stdout] 411 | ...                   let newElement = args.get(0).unwrap().clone();
[INFO] [stdout]     |                           ^^^^^^^^^^ help: convert the identifier to snake case: `new_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `actualArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:465:49
[INFO] [stdout]     |
[INFO] [stdout] 465 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: convert the identifier to snake case: `actual_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `actualArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:500:49
[INFO] [stdout]     |
[INFO] [stdout] 500 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: convert the identifier to snake case: `actual_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `actualArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:534:49
[INFO] [stdout]     |
[INFO] [stdout] 534 | ...                   let mut actualArray: &mut Array = match array {
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: convert the identifier to snake case: `actual_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `underLyingArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:542:45
[INFO] [stdout]     |
[INFO] [stdout] 542 | ...                   let underLyingArray = actualArray.content.clone();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `under_lying_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `sortedArray` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:550:49
[INFO] [stdout]     |
[INFO] [stdout] 550 | ...                   let mut sortedArray = underLyingArray.clone();
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: convert the identifier to snake case: `sorted_array`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `variableVec` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:687:37
[INFO] [stdout]     |
[INFO] [stdout] 687 | ...                   let variableVec = if matches!(*orig_caller, Ast::Var(_, _)) {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `variable_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `variableVec` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:703:37
[INFO] [stdout]     |
[INFO] [stdout] 703 | ...                   let variableVec = if matches!(*orig_caller, Ast::Var(_, _)) {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `variable_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `variableVec` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:719:37
[INFO] [stdout]     |
[INFO] [stdout] 719 | ...                   let variableVec = if matches!(*orig_caller, Ast::Var(_, _)) {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `variable_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `variableVec` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:736:37
[INFO] [stdout]     |
[INFO] [stdout] 736 | ...                   let variableVec = if matches!(*orig_caller, Ast::Var(_, _)) {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `variable_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `propertyKey` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:759:29
[INFO] [stdout]     |
[INFO] [stdout] 759 |                         let propertyKey = match property {
[INFO] [stdout]     |                             ^^^^^^^^^^^ help: convert the identifier to snake case: `property_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `propertyKey` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:779:37
[INFO] [stdout]     |
[INFO] [stdout] 779 | ...                   let propertyKey = match property {
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: convert the identifier to snake case: `property_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:823:9
[INFO] [stdout]     |
[INFO] [stdout] 823 |         _functionScope: FunctionScope,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `_function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_structScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:824:9
[INFO] [stdout]     |
[INFO] [stdout] 824 |         _structScope: StructScope,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `_struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retValue` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:827:17
[INFO] [stdout]     |
[INFO] [stdout] 827 |         let mut retValue = None;
[INFO] [stdout]     |                 ^^^^^^^^ help: convert the identifier to snake case: `ret_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:828:13
[INFO] [stdout]     |
[INFO] [stdout] 828 |         let retScope = _scope.clone();
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `ret_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retFunctionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:829:13
[INFO] [stdout]     |
[INFO] [stdout] 829 |         let retFunctionScope = _functionScope.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `ret_function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `retStructScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:830:13
[INFO] [stdout]     |
[INFO] [stdout] 830 |         let retStructScope = _structScope.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `ret_struct_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:862:21
[INFO] [stdout]     |
[INFO] [stdout] 862 |                 let functionScope = Rc::clone(&retFunctionScope);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `valueScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:863:21
[INFO] [stdout]     |
[INFO] [stdout] 863 |                 let valueScope = Rc::clone(&retScope);
[INFO] [stdout]     |                     ^^^^^^^^^^ help: convert the identifier to snake case: `value_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `structureScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:864:21
[INFO] [stdout]     |
[INFO] [stdout] 864 |                 let structureScope = Rc::clone(&retStructScope);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `structure_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionBody` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:865:21
[INFO] [stdout]     |
[INFO] [stdout] 865 |                 let functionBody = body.clone();
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: convert the identifier to snake case: `function_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `localScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:871:25
[INFO] [stdout]     |
[INFO] [stdout] 871 |                     let localScope = valueScope.clone();
[INFO] [stdout]     |                         ^^^^^^^^^^ help: convert the identifier to snake case: `local_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `functionScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:883:25
[INFO] [stdout]     |
[INFO] [stdout] 883 |                     let functionScope = Rc::clone(&functionScope);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^ help: convert the identifier to snake case: `function_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `localScope` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:972:21
[INFO] [stdout]     |
[INFO] [stdout] 972 |                 let localScope = retScope.clone();
[INFO] [stdout]     |                     ^^^^^^^^^^ help: convert the identifier to snake case: `local_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rangeBegin` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:974:25
[INFO] [stdout]     |
[INFO] [stdout] 974 |                 let mut rangeBegin = 0;
[INFO] [stdout]     |                         ^^^^^^^^^^ help: convert the identifier to snake case: `range_begin`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rangeEnd` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:975:25
[INFO] [stdout]     |
[INFO] [stdout] 975 |                 let mut rangeEnd = 0;
[INFO] [stdout]     |                         ^^^^^^^^ help: convert the identifier to snake case: `range_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rangeBeginAst` should have a snake case name
[INFO] [stdout]    --> src/interpreter.rs:977:21
[INFO] [stdout]     |
[INFO] [stdout] 977 |                 let rangeBeginAst = Interpreter::evaluate(
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `range_begin_ast`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rangeEndAst` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1006:21
[INFO] [stdout]      |
[INFO] [stdout] 1006 |                 let rangeEndAst = Interpreter::evaluate(
[INFO] [stdout]      |                     ^^^^^^^^^^^ help: convert the identifier to snake case: `range_end_ast`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `copyId` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1037:25
[INFO] [stdout]      |
[INFO] [stdout] 1037 |                     let copyId = id.clone();
[INFO] [stdout]      |                         ^^^^^^ help: convert the identifier to snake case: `copy_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `loopVar` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1038:25
[INFO] [stdout]      |
[INFO] [stdout] 1038 |                     let loopVar = localScope.borrow_mut().get(&copyId).unwrap().clone();
[INFO] [stdout]      |                         ^^^^^^^ help: convert the identifier to snake case: `loop_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ifBody` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1052:41
[INFO] [stdout]      |
[INFO] [stdout] 1052 |             Ast::Conditional(condition, ifBody, elseBody) => {
[INFO] [stdout]      |                                         ^^^^^^ help: convert the identifier to snake case: `if_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `elseBody` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1052:49
[INFO] [stdout]      |
[INFO] [stdout] 1052 |             Ast::Conditional(condition, ifBody, elseBody) => {
[INFO] [stdout]      |                                                 ^^^^^^^^ help: convert the identifier to snake case: `else_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `conditionEvaluated` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1053:21
[INFO] [stdout]      |
[INFO] [stdout] 1053 |                 let conditionEvaluated = Interpreter::evaluate(
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `condition_evaluated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `propertyKey` should have a snake case name
[INFO] [stdout]     --> src/interpreter.rs:1097:25
[INFO] [stdout]      |
[INFO] [stdout] 1097 |                     let propertyKey = match value.clone() {
[INFO] [stdout]      |                         ^^^^^^^^^^^ help: convert the identifier to snake case: `property_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `KEYWORDS` should have a snake case name
[INFO] [stdout]  --> src/lexer.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn KEYWORDS() -> HashSet<&'static str> {
[INFO] [stdout]   |    ^^^^^^^^ help: convert the identifier to snake case: `keywords`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isOperator` should have a snake case name
[INFO] [stdout]    --> src/lexer.rs:116:12
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn isOperator(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to snake case: `is_operator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isAtEnd` should have a snake case name
[INFO] [stdout]    --> src/lexer.rs:252:12
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn isAtEnd(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to snake case: `is_at_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isChar` should have a snake case name
[INFO] [stdout]    --> src/lexer.rs:282:8
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn isChar(&self, c: char) -> bool {
[INFO] [stdout]     |        ^^^^^^ help: convert the identifier to snake case: `is_char`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `peekType` should have a snake case name
[INFO] [stdout]   --> src/parser.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn peekType(&self) -> Option<TokenType> {
[INFO] [stdout]    |        ^^^^^^^^ help: convert the identifier to snake case: `peek_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `nextType` should have a snake case name
[INFO] [stdout]   --> src/parser.rs:38:24
[INFO] [stdout]    |
[INFO] [stdout] 38 |         while let Some(nextType) = self.peekType() {
[INFO] [stdout]    |                        ^^^^^^^^ help: convert the identifier to snake case: `next_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `tokenType2` should have a snake case name
[INFO] [stdout]   --> src/parser.rs:58:18
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Some(tokenType2) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: convert the identifier to snake case: `token_type2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `identifierList` should have a snake case name
[INFO] [stdout]   --> src/parser.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn identifierList(&mut self) -> Vec<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `identifier_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `nextType` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:108:21
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 let nextType = self.peekType();
[INFO] [stdout]     |                     ^^^^^^^^ help: convert the identifier to snake case: `next_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rightLeft` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:225:29
[INFO] [stdout]     |
[INFO] [stdout] 225 |                 Ast::Binary(rightLeft, rightOp, rightRight) => {
[INFO] [stdout]     |                             ^^^^^^^^^ help: convert the identifier to snake case: `right_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rightOp` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:225:40
[INFO] [stdout]     |
[INFO] [stdout] 225 |                 Ast::Binary(rightLeft, rightOp, rightRight) => {
[INFO] [stdout]     |                                        ^^^^^^^ help: convert the identifier to snake case: `right_op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `rightRight` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:225:49
[INFO] [stdout]     |
[INFO] [stdout] 225 |                 Ast::Binary(rightLeft, rightOp, rightRight) => {
[INFO] [stdout]     |                                                 ^^^^^^^^^^ help: convert the identifier to snake case: `right_right`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `exprList` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:242:12
[INFO] [stdout]     |
[INFO] [stdout] 242 |     pub fn exprList(&mut self) -> Vec<Ast> {
[INFO] [stdout]     |            ^^^^^^^^ help: convert the identifier to snake case: `expr_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `peekKeyword` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:265:8
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn peekKeyword(&self, keyword: &'static str) -> Option<Token> {
[INFO] [stdout]     |        ^^^^^^^^^^^ help: convert the identifier to snake case: `peek_keyword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `nextType` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:266:13
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let nextType = self.peekType().unwrap();
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `next_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eatKeyword` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:278:8
[INFO] [stdout]     |
[INFO] [stdout] 278 |     fn eatKeyword(&mut self, keyword: &'static str) -> Token {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `eat_keyword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `funcStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:293:8
[INFO] [stdout]     |
[INFO] [stdout] 293 |     fn funcStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^ help: convert the identifier to snake case: `func_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `returnStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:320:8
[INFO] [stdout]     |
[INFO] [stdout] 320 |     fn returnStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `return_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `forStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:326:8
[INFO] [stdout]     |
[INFO] [stdout] 326 |     fn forStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `for_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `whileStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:349:8
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn whileStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^ help: convert the identifier to snake case: `while_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `conditionalStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:369:8
[INFO] [stdout]     |
[INFO] [stdout] 369 |     fn conditionalStmt(&mut self, keyword: &'static str) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `conditional_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `elseKeyword` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:401:17
[INFO] [stdout]     |
[INFO] [stdout] 401 |             let elseKeyword = self.peekKeyword("else");
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `else_keyword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `elifKeyword` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:402:17
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let elifKeyword = self.peekKeyword("elif");
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `elif_keyword`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assignStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:416:8
[INFO] [stdout]     |
[INFO] [stdout] 416 |     fn assignStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `assign_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `structStmt` should have a snake case name
[INFO] [stdout]    --> src/parser.rs:440:8
[INFO] [stdout]     |
[INFO] [stdout] 440 |     fn structStmt(&mut self) -> Ast {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `struct_stmt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.09s
[INFO] running `Command { std: "docker" "inspect" "1c22393e1cfc87d8162aac9ee1f8f08d93b650df3e5552ef3f6e01785f23adfe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1c22393e1cfc87d8162aac9ee1f8f08d93b650df3e5552ef3f6e01785f23adfe", kill_on_drop: false }`
[INFO] [stdout] 1c22393e1cfc87d8162aac9ee1f8f08d93b650df3e5552ef3f6e01785f23adfe
