[INFO] cloning repository https://github.com/igornet0/DataCode
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/igornet0/DataCode" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Figornet0%2FDataCode", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Figornet0%2FDataCode'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b97329ba62ca79877353aeb4cfc774a601378ba4
[INFO] testing igornet0/DataCode against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Figornet0%2FDataCode" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/igornet0/DataCode
[INFO] finished tweaking git repo https://github.com/igornet0/DataCode
[INFO] tweaked toml for git repo https://github.com/igornet0/DataCode written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/igornet0/DataCode on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/igornet0/DataCode 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded fast-float2 v0.2.3
[INFO] [stderr]   Downloaded debug_unsafe v0.1.3
[INFO] [stderr]   Downloaded amq-protocol-uri v7.2.3
[INFO] [stderr]   Downloaded amq-protocol v7.2.3
[INFO] [stderr]   Downloaded atoi_simd v0.16.1
[INFO] [stderr]   Downloaded zip v4.3.0
[INFO] [stderr]   Downloaded amq-protocol-tcp v7.2.3
[INFO] [stderr]   Downloaded calamine v0.28.0
[INFO] [stderr]   Downloaded amq-protocol-types v7.2.3
[INFO] [stderr]   Downloaded rustyline v14.0.0
[INFO] [stderr]   Downloaded codepage v0.1.2
[INFO] [stderr]   Downloaded rustls v0.23.29
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 069d33277103e9caa79fda8a972f634ffee3faec0a979aa2a6f50500f2859f9b
[INFO] running `Command { std: "docker" "start" "-a" "069d33277103e9caa79fda8a972f634ffee3faec0a979aa2a6f50500f2859f9b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "069d33277103e9caa79fda8a972f634ffee3faec0a979aa2a6f50500f2859f9b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "069d33277103e9caa79fda8a972f634ffee3faec0a979aa2a6f50500f2859f9b", kill_on_drop: false }`
[INFO] [stdout] 069d33277103e9caa79fda8a972f634ffee3faec0a979aa2a6f50500f2859f9b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 78645eda07583f090951f9882356afa48d795c9b9dc192697ef45058cf472614
[INFO] running `Command { std: "docker" "start" "-a" "78645eda07583f090951f9882356afa48d795c9b9dc192697ef45058cf472614", kill_on_drop: false }`
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling der_derive v0.7.3
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling cc v1.2.29
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling time v0.3.41
[INFO] [stderr]    Compiling asn1-rs-derive v0.6.0
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]    Compiling rustix v1.0.7
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling tracing-core v0.1.34
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling event-listener v5.4.0
[INFO] [stderr]    Compiling oid-registry v0.8.1
[INFO] [stderr]    Compiling linux-raw-sys v0.9.4
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling pbkdf2 v0.12.2
[INFO] [stderr]    Compiling salsa20 v0.10.2
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling rustls v0.23.29
[INFO] [stderr]    Compiling scrypt v0.11.0
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling cbc v0.1.2
[INFO] [stderr]    Compiling futures-lite v2.6.0
[INFO] [stderr]    Compiling rustls-pemfile v2.2.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling zerovec v0.11.2
[INFO] [stderr]    Compiling io-lifetimes v1.0.11
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling rustls-native-certs v0.7.3
[INFO] [stderr]    Compiling rc2 v0.8.1
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling des v0.8.1
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling der v0.7.10
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling polling v2.8.0
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling cookie-factory v0.3.3
[INFO] [stderr]    Compiling rustix v0.37.28
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling async-channel v2.5.0
[INFO] [stderr]    Compiling async-lock v3.4.0
[INFO] [stderr]    Compiling async-io v1.13.0
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]    Compiling waker-fn v1.2.0
[INFO] [stderr]    Compiling linux-raw-sys v0.3.8
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]    Compiling doc-comment v0.3.3
[INFO] [stderr]    Compiling zlib-rs v0.5.1
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling async-lock v2.8.0
[INFO] [stderr]    Compiling nix v0.28.0
[INFO] [stderr]    Compiling blocking v1.6.2
[INFO] [stderr]    Compiling async-executor v1.13.2
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling potential_utf v0.1.2
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling futures-lite v1.13.0
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling socket2 v0.4.10
[INFO] [stderr]    Compiling rusticata-macros v4.1.0
[INFO] [stderr]    Compiling spki v0.7.3
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling x509-cert v0.2.5
[INFO] [stderr]    Compiling asn1-rs v0.7.1
[INFO] [stderr]    Compiling pkcs5 v0.7.1
[INFO] [stderr]    Compiling amq-protocol v7.2.3
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling indexmap v2.10.0
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling executor-trait v2.1.2
[INFO] [stderr]    Compiling zopfli v0.8.2
[INFO] [stderr]    Compiling reactor-trait v1.1.0
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling nibble_vec v0.1.0
[INFO] [stderr]    Compiling debug_unsafe v0.1.3
[INFO] [stderr]    Compiling lapin v2.5.3
[INFO] [stderr]    Compiling radix_trie v0.2.1
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]    Compiling pinky-swear v6.2.0
[INFO] [stderr]    Compiling atoi_simd v0.16.1
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling codepage v0.1.2
[INFO] [stderr]    Compiling csv-core v0.1.12
[INFO] [stderr]    Compiling fast-float2 v0.2.3
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling tokio v1.46.1
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling der-parser v10.0.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling cms v0.2.3
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling x509-parser v0.17.0
[INFO] [stderr]    Compiling idna v1.0.3
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]    Compiling async-reactor-trait v1.1.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling pkcs12 v0.1.0
[INFO] [stderr]    Compiling memmap2 v0.9.7
[INFO] [stderr]    Compiling amq-protocol-types v7.2.3
[INFO] [stderr]    Compiling rustls-webpki v0.103.4
[INFO] [stderr]    Compiling p12-keystore v0.1.5
[INFO] [stderr]    Compiling polling v3.8.0
[INFO] [stderr]    Compiling amq-protocol-uri v7.2.3
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling rustyline v14.0.0
[INFO] [stderr]    Compiling async-io v2.4.1
[INFO] [stderr]    Compiling libz-rs-sys v0.5.1
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling async-global-executor v3.1.0
[INFO] [stderr]    Compiling zip v4.3.0
[INFO] [stderr]    Compiling async-global-executor-trait v2.2.0
[INFO] [stderr]    Compiling calamine v0.28.0
[INFO] [stderr]    Compiling rustls-connector v0.20.2
[INFO] [stderr]    Compiling tcp-stream v0.28.0
[INFO] [stderr]    Compiling amq-protocol-tcp v7.2.3
[INFO] [stderr]    Compiling data_code v1.5.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/builtins/registry.rs:309:1
[INFO] [stdout]     |
[INFO] [stdout] 309 | /// Глобальный реестр функций с оптимизированным доступом
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/profiler/mod.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | /// Глобальный профилировщик
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/profiler/logger.rs:322:1
[INFO] [stdout]     |
[INFO] [stdout] 322 | /// Глобальный логгер производительности
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/profiler/monitor.rs:304:1
[INFO] [stdout]     |
[INFO] [stdout] 304 | /// Глобальный монитор оптимизаций
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]   --> src/builtins/array.rs:92:30
[INFO] [stdout]    |
[INFO] [stdout] 92 |                         for (j, template_item) in template.iter().enumerate() {
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expression`
[INFO] [stdout]   --> src/evaluator/expressions.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn evaluate_spread(&self, expression: &Expr) -> Result<Value> {
[INFO] [stdout]    |                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/profiler/mod.rs:29:24
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn start_timer(&self, operation: &str) -> TimerGuard {
[INFO] [stdout]    |                        ^^^^^                      ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn start_timer(&self, operation: &str) -> TimerGuard<'_> {
[INFO] [stdout]    |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/builtins/registry.rs:309:1
[INFO] [stdout]     |
[INFO] [stdout] 309 | /// Глобальный реестр функций с оптимизированным доступом
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]   --> src/builtins/array.rs:92:30
[INFO] [stdout]    |
[INFO] [stdout] 92 |                         for (j, template_item) in template.iter().enumerate() {
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expression`
[INFO] [stdout]   --> src/evaluator/expressions.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn evaluate_spread(&self, expression: &Expr) -> Result<Value> {
[INFO] [stdout]    |                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_numeric` is never used
[INFO] [stdout]   --> src/value/types.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl DataType {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn is_numeric(&self) -> bool {
[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 associated items are never used
[INFO] [stdout]    --> src/value/types.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | impl Value {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 105 |     /// Создать новое числовое значение
[INFO] [stdout] 106 |     pub fn number(n: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn string<S: Into<String>>(s: S) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn bool(b: bool) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn array(elements: Vec<Value>) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn object(map: HashMap<String, Value>) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn currency<S: Into<String>>(s: S) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn null() -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn path(path: PathBuf) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn path_pattern(path: PathBuf) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn table_from_rc(table: Rc<RefCell<Table>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn is_numeric(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn is_null(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn is_array(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub fn is_object(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     pub fn is_table(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn get_type(&self) -> DataType {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn as_number(&self) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn as_string(&self) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn as_array(&self) -> Option<&Vec<Value>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn as_object(&self) -> Option<&HashMap<String, Value>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn as_table(&self) -> Option<Rc<RefCell<Table>>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn as_table_ref(&self) -> Option<&Rc<RefCell<Table>>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub fn as_path(&self) -> Option<&PathBuf> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_type_purity` and `is_homogeneous` are never used
[INFO] [stdout]    --> src/value/table.rs:141:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl TableColumn {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn get_type_purity(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn is_homogeneous(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/value/table.rs:247:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl Table {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn get_warnings(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub fn row_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn column_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn get_value(&self, row: usize, col: usize) -> Option<&Value> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn get_row(&self, row: usize) -> Option<&Vec<Value>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn get_column_by_name(&self, name: &str) -> Option<&TableColumn> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub fn get_column_index(&self, name: &str) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get_column_values(&self, name: &str) -> Option<Vec<&Value>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 291 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 296 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_parse_number` is never used
[INFO] [stdout]    --> src/value/conversions.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn try_parse_number(s: &str) -> Option<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_parse_bool` is never used
[INFO] [stdout]    --> src/value/conversions.rs:224:8
[INFO] [stdout]     |
[INFO] [stdout] 224 | pub fn try_parse_bool(s: &str) -> Option<bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_currency_string` is never used
[INFO] [stdout]    --> src/value/conversions.rs:233:8
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn normalize_currency_string(s: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_currency_symbols` is never used
[INFO] [stdout]    --> src/value/conversions.rs:238:8
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub fn get_currency_symbols() -> &'static [char] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_currency_codes` is never used
[INFO] [stdout]    --> src/value/conversions.rs:243:8
[INFO] [stdout]     |
[INFO] [stdout] 243 | pub fn get_currency_codes() -> &'static [&'static str] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/value/operations.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub trait ValueOperations {
[INFO] [stdout]    |           --------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 12 |     fn subtract(&self, other: &Value) -> Result<Value, String>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn multiply(&self, other: &Value) -> Result<Value, String>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn divide(&self, other: &Value) -> Result<Value, String>;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn modulo(&self, other: &Value) -> Result<Value, String>;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn equals(&self, other: &Value) -> bool;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn less_than(&self, other: &Value) -> Result<bool, String>;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn greater_than(&self, other: &Value) -> Result<bool, String>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn get_type(&self) -> DataType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn is_numeric(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn is_null(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn to_display_string(&self) -> String;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `subtract_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:181:8
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub fn subtract_values(left: &Value, right: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub fn multiply_values(left: &Value, right: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `divide_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn divide_values(left: &Value, right: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `modulo_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:241:8
[INFO] [stdout]     |
[INFO] [stdout] 241 | pub fn modulo_values(left: &Value, right: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `values_equal` is never used
[INFO] [stdout]    --> src/value/operations.rs:256:8
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub fn values_equal(left: &Value, right: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:275:8
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub fn compare_values(left: &Value, right: &Value) -> Result<std::cmp::Ordering, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logical_and` is never used
[INFO] [stdout]    --> src/value/operations.rs:301:8
[INFO] [stdout]     |
[INFO] [stdout] 301 | pub fn logical_and(left: &Value, right: &Value) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logical_or` is never used
[INFO] [stdout]    --> src/value/operations.rs:308:8
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub fn logical_or(left: &Value, right: &Value) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logical_not` is never used
[INFO] [stdout]    --> src/value/operations.rs:315:8
[INFO] [stdout]     |
[INFO] [stdout] 315 | pub fn logical_not(value: &Value) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_boolean` is never used
[INFO] [stdout]    --> src/value/operations.rs:320:8
[INFO] [stdout]     |
[INFO] [stdout] 320 | pub fn to_boolean(value: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `negate_value` is never used
[INFO] [stdout]    --> src/value/operations.rs:337:8
[INFO] [stdout]     |
[INFO] [stdout] 337 | pub fn negate_value(value: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `abs_value` is never used
[INFO] [stdout]    --> src/value/operations.rs:346:8
[INFO] [stdout]     |
[INFO] [stdout] 346 | pub fn abs_value(value: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_truthy` is never used
[INFO] [stdout]    --> src/value/operations.rs:354:8
[INFO] [stdout]     |
[INFO] [stdout] 354 | pub fn is_truthy(value: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_falsy` is never used
[INFO] [stdout]    --> src/value/operations.rs:359:8
[INFO] [stdout]     |
[INFO] [stdout] 359 | pub fn is_falsy(value: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Sort` is never constructed
[INFO] [stdout]   --> src/value/lazy.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum LazyOperation {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 36 |     Sort {
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LazyOperation` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sort` is never used
[INFO] [stdout]   --> src/value/lazy.rs:92:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl LazyTable {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub fn sort(mut self, column: String, ascending: bool, line: usize) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OptimizedCsvReader` is never constructed
[INFO] [stdout]   --> src/builtins/file_io.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct OptimizedCsvReader {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/builtins/file_io.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl OptimizedCsvReader {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Создать новый оптимизированный читатель CSV
[INFO] [stdout]  22 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |     pub fn with_buffer_size(mut self, size: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |     pub fn with_chunk_size(mut self, size: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  43 |     pub fn read_csv_optimized(&self, path: &Path) -> Result<Table> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     fn process_chunk(&self, chunk: &[StringRecord], column_names: &[String]) -> Result<Vec<Vec<Value>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     fn process_chunk_sequential(&self, chunk: &[StringRecord], column_names: &[String]) -> Result<Vec<Vec<Value>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn process_chunk_parallel(&self, chunk: &[StringRecord], column_names: &[String]) -> Result<Vec<Vec<Value>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn parse_field_value(&self, field: &str) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn is_date_like(&self, value: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OptimizedExcelReader` is never constructed
[INFO] [stdout]    --> src/builtins/file_io.rs:186:12
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub struct OptimizedExcelReader;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `read_excel_optimized` are never used
[INFO] [stdout]    --> src/builtins/file_io.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 188 | impl OptimizedExcelReader {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 189 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn read_excel_optimized(&self, _path: &Path) -> Result<Table> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileCache` is never constructed
[INFO] [stdout]    --> src/builtins/file_io.rs:205:12
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct FileCache {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, `insert`, `clear`, and `size` are never used
[INFO] [stdout]    --> src/builtins/file_io.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | impl FileCache {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 211 |     /// Создать новый кэш файлов
[INFO] [stdout] 212 |     pub fn new(max_size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn get(&self, path: &Path) -> Option<Table> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub fn insert(&self, path: PathBuf, table: Table) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn clear(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_file_optimized` is never used
[INFO] [stdout]    --> src/builtins/file_io.rs:259:8
[INFO] [stdout]     |
[INFO] [stdout] 259 | pub fn read_file_optimized(path: &Path) -> Result<Table> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_functions_by_category`, `get_categories`, and `get_all_functions` are never used
[INFO] [stdout]    --> src/builtins/registry.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl FunctionRegistry {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub fn get_functions_by_category(&self, category: &str) -> Vec<&FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn get_categories(&self) -> Vec<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn get_all_functions(&self) -> &HashMap<&'static str, FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_function_info` is never used
[INFO] [stdout]    --> src/builtins/registry.rs:325:8
[INFO] [stdout]     |
[INFO] [stdout] 325 | pub fn get_function_info(name: &str) -> Option<&FunctionInfo> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_functions_by_category` is never used
[INFO] [stdout]    --> src/builtins/registry.rs:330:8
[INFO] [stdout]     |
[INFO] [stdout] 330 | pub fn get_functions_by_category(category: &str) -> Vec<&FunctionInfo> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_all_categories` is never used
[INFO] [stdout]    --> src/builtins/registry.rs:335:8
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub fn get_all_categories() -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/interpreter/mod.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl Interpreter {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn exec_multiline(&mut self, code: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn define_function(&mut self, name: String, parameters: Vec<String>, body: Vec<String>, is_global: bool) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub fn add_user_function(&mut self, function: UserFunction) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 465 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 487 |     pub fn find_exception_handler(&self) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 504 |     pub fn deactivate_try_blocks_until(&mut self, until_index: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 545 |     pub fn is_in_function(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 550 |     pub fn get_recursion_depth(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/interpreter/user_functions.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl UserFunction {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 13 |     pub fn new(name: String, parameters: Vec<String>, body: Vec<String>, is_global: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_simple`, `new_minimal`, `can_handle_exception`, `is_active`, and `deactivate` are never used
[INFO] [stdout]   --> src/interpreter/user_functions.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl TryBlock {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn new_simple(block_id: usize, nesting_level: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn new_minimal(block_id: usize, line: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn can_handle_exception(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub fn is_active(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn deactivate(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_all_functions`, `remove_function`, and `clear` are never used
[INFO] [stdout]    --> src/interpreter/user_functions.rs:122:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl UserFunctionManager {
[INFO] [stdout]     | ------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn get_all_functions(&self) -> &HashMap<String, UserFunction> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn remove_function(&mut self, name: &str) -> Option<UserFunction> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `clear`, `function_depth`, `loop_depth`, `is_in_function`, and `is_in_loop` are never used
[INFO] [stdout]    --> src/interpreter/variables.rs:142:12
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl VariableManager {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn function_depth(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn loop_depth(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn is_in_function(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn is_in_loop(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ControlFlowHandler` is never constructed
[INFO] [stdout]  --> src/interpreter/control_flow.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ControlFlowHandler;
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/interpreter/control_flow.rs:11:12
[INFO] [stdout]     |
[INFO] [stdout]   9 | impl ControlFlowHandler {
[INFO] [stdout]     | ----------------------- associated functions in this implementation
[INFO] [stdout]  10 |     /// Выполнить условную конструкцию if/else
[INFO] [stdout]  11 |     pub fn execute_if(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  30 |     pub fn execute_for(
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn execute_try(
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn execute_block(interpreter: &mut Interpreter, lines: &[String]) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     fn iterate_over_array(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     fn iterate_over_table(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     fn iterate_over_string(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     fn iterate_over_object(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn execute_nested_if(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     pub fn execute_while(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     fn to_bool(value: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FileSystemError` and `ExpressionError` are never constructed
[INFO] [stdout]   --> src/error.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum DataCodeError {
[INFO] [stdout]    |          ------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 40 |     FileSystemError {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     ExpressionError {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DataCodeError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `AlreadyDefined` and `InvalidScope` are never constructed
[INFO] [stdout]   --> src/error.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub enum VariableErrorType {
[INFO] [stdout]    |          ----------------- variants in this enum
[INFO] [stdout] 62 |     NotFound,
[INFO] [stdout] 63 |     AlreadyDefined,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 64 |     InvalidScope,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VariableErrorType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InvalidArgument` and `InvalidReturn` are never constructed
[INFO] [stdout]   --> src/error.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub enum FunctionErrorType {
[INFO] [stdout]    |          ----------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 71 |     InvalidArgument { index: usize, expected: String, found: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 72 |     InvalidReturn,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionErrorType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NotFound`, `PermissionDenied`, `InvalidPath`, `UnsupportedFormat`, `ReadError`, and `WriteError` are never constructed
[INFO] [stdout]   --> src/error.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub enum FileSystemErrorType {
[INFO] [stdout]    |          ------------------- variants in this enum
[INFO] [stdout] 77 |     NotFound,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 78 |     PermissionDenied,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 79 |     InvalidPath,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 80 |     UnsupportedFormat,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 81 |     ReadError(String),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 82 |     WriteError(String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileSystemErrorType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `file_not_found` and `expression_error` are never used
[INFO] [stdout]    --> src/error.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl DataCodeError {
[INFO] [stdout]     | ------------------ associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn file_not_found(path: &str, line: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |     pub fn expression_error(expression: &str, message: &str, line: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse_statement` is never used
[INFO] [stdout]   --> src/parser/mod.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn parse_statement(&mut self) -> Result<Expr> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PathJoin` is never constructed
[INFO] [stdout]   --> src/parser/tokens.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub enum Token {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     PathJoin,       // / (для путей)
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TryBlock` and `ThrowStatement` are never constructed
[INFO] [stdout]    --> src/parser/tokens.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout]  72 | pub enum Expr {
[INFO] [stdout]     |          ---- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 105 |     TryBlock {
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     ThrowStatement {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PathJoin` is never constructed
[INFO] [stdout]    --> src/parser/tokens.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub enum BinaryOp {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 124 |     PathJoin,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BinaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_literal`, `is_operator`, and `is_keyword` are never used
[INFO] [stdout]    --> src/parser/tokens.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 142 | impl Token {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 143 |     /// Проверить, является ли токен литералом
[INFO] [stdout] 144 |     pub fn is_literal(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn is_operator(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn is_keyword(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `precedence` and `is_left_associative` are never used
[INFO] [stdout]    --> src/parser/tokens.rs:170:12
[INFO] [stdout]     |
[INFO] [stdout] 168 | impl BinaryOp {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] 169 |     /// Получить приоритет оператора (чем больше число, тем выше приоритет)
[INFO] [stdout] 170 |     pub fn precedence(&self) -> u8 {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn is_left_associative(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StatementParser` is never constructed
[INFO] [stdout]   --> src/parser/statements.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct StatementParser<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `parse_statement` are never used
[INFO] [stdout]   --> src/parser/statements.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl<'a> StatementParser<'a> {
[INFO] [stdout]    | ---------------------------- associated items in this implementation
[INFO] [stdout] 16 |     /// Создать новый парсер операторов
[INFO] [stdout] 17 |     pub fn new(parser: &'a mut Parser) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn parse_statement(&mut self) -> Result<Expr> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `variables` is never used
[INFO] [stdout]   --> src/evaluator/mod.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<'a> Evaluator<'a> {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn variables(&self) -> &HashMap<String, Value> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_and_evaluate` is never used
[INFO] [stdout]    --> src/evaluator/mod.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn parse_and_evaluate(expr_str: &str, variables: &HashMap<String, Value>, line: usize) -> Result<Value> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ExpressionEvaluable` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:127:11
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub trait ExpressionEvaluable {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_constant_expression` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn is_constant_expression(expr: &Expr) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_variables_in_expression` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub fn get_variables_in_expression(expr: &Expr) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_variables` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:163:8
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn collect_variables(expr: &Expr, variables: &mut Vec<String>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `expression_complexity` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:198:12
[INFO] [stdout]     |
[INFO] [stdout] 198 |     pub fn expression_complexity(expr: &Expr) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `OperatorEvaluable` is never used
[INFO] [stdout]    --> src/evaluator/operators.rs:225:11
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub trait OperatorEvaluable {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/evaluator/functions.rs:96:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl<'a> FunctionCallHandler<'a> {
[INFO] [stdout]     | -------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn validate_arg_count(&self, function_name: &str, expected: usize, actual: usize) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn validate_min_arg_count(&self, function_name: &str, min_expected: usize, actual: usize) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn validate_arg_count_range(&self, function_name: &str, min: usize, max: usize, actual: usize) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn validate_arg_type(&self, function_name: &str, arg_index: usize, expected_type: &str, actual: &Value) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn get_number_arg(&self, function_name: &str, args: &[Value], index: usize) -> Result<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     pub fn get_string_arg(&self, function_name: &str, args: &[Value], index: usize) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn get_array_arg(&self, function_name: &str, args: &[Value], index: usize) -> Result<Vec<Value>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn get_bool_arg(&self, function_name: &str, args: &[Value], index: usize) -> Result<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FunctionCallable` is never used
[INFO] [stdout]    --> src/evaluator/functions.rs:230:11
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub trait FunctionCallable {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FunctionInfo` is never constructed
[INFO] [stdout]    --> src/evaluator/functions.rs:249:12
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub struct FunctionInfo {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `accepts_arg_count` are never used
[INFO] [stdout]    --> src/evaluator/functions.rs:259:12
[INFO] [stdout]     |
[INFO] [stdout] 257 | impl FunctionInfo {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 258 |     /// Создать новую информацию о функции
[INFO] [stdout] 259 |     pub fn new(name: String, min_args: usize, max_args: Option<usize>, description: String, category: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn accepts_arg_count(&self, count: usize) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FunctionRegistry` is never constructed
[INFO] [stdout]    --> src/evaluator/functions.rs:276:12
[INFO] [stdout]     |
[INFO] [stdout] 276 | pub struct FunctionRegistry {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `register`, `get_function_info`, `get_all_functions`, and `get_functions_by_category` are never used
[INFO] [stdout]    --> src/evaluator/functions.rs:282:12
[INFO] [stdout]     |
[INFO] [stdout] 280 | impl FunctionRegistry {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 281 |     /// Создать новый реестр функций
[INFO] [stdout] 282 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn register(&mut self, info: FunctionInfo) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub fn get_function_info(&self, name: &str) -> Option<&FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 |     pub fn get_all_functions(&self) -> &std::collections::HashMap<String, FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn get_functions_by_category(&self, category: &str) -> Vec<&FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Indexable` is never used
[INFO] [stdout]    --> src/evaluator/indexing.rs:245:11
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub trait Indexable {
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HasMembers` is never used
[INFO] [stdout]    --> src/evaluator/indexing.rs:277:11
[INFO] [stdout]     |
[INFO] [stdout] 277 | pub trait HasMembers {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 22s
[INFO] running `Command { std: "docker" "inspect" "78645eda07583f090951f9882356afa48d795c9b9dc192697ef45058cf472614", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "78645eda07583f090951f9882356afa48d795c9b9dc192697ef45058cf472614", kill_on_drop: false }`
[INFO] [stdout] 78645eda07583f090951f9882356afa48d795c9b9dc192697ef45058cf472614
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8588bdaf444e35d1d1bc78842ecd0bb41415e81a7fbfc1c2b24bcfcc4fc8670e
[INFO] running `Command { std: "docker" "start" "-a" "8588bdaf444e35d1d1bc78842ecd0bb41415e81a7fbfc1c2b24bcfcc4fc8670e", kill_on_drop: false }`
[INFO] [stderr]    Compiling data_code v1.5.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/builtins/registry.rs:309:1
[INFO] [stdout]     |
[INFO] [stdout] 309 | /// Глобальный реестр функций с оптимизированным доступом
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/profiler/mod.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | /// Глобальный профилировщик
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/profiler/logger.rs:322:1
[INFO] [stdout]     |
[INFO] [stdout] 322 | /// Глобальный логгер производительности
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/profiler/monitor.rs:304:1
[INFO] [stdout]     |
[INFO] [stdout] 304 | /// Глобальный монитор оптимизаций
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]   --> src/builtins/array.rs:92:30
[INFO] [stdout]    |
[INFO] [stdout] 92 |                         for (j, template_item) in template.iter().enumerate() {
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expression`
[INFO] [stdout]   --> src/evaluator/expressions.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn evaluate_spread(&self, expression: &Expr) -> Result<Value> {
[INFO] [stdout]    |                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/profiler/mod.rs:29:24
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn start_timer(&self, operation: &str) -> TimerGuard {
[INFO] [stdout]    |                        ^^^^^                      ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn start_timer(&self, operation: &str) -> TimerGuard<'_> {
[INFO] [stdout]    |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `data_code::value::Value`
[INFO] [stdout]  --> tests/multiline_parser_tests.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use data_code::value::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> tests/profiler_tests.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |     assert!(recommendations.len() >= 0);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> tests/profiler_tests.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |     assert!(summary.total_operations >= 0);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> tests/profiler_tests.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |     assert!(summary.total_operations >= 0);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/builtins/registry.rs:309:1
[INFO] [stdout]     |
[INFO] [stdout] 309 | /// Глобальный реестр функций с оптимизированным доступом
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]   --> src/builtins/array.rs:92:30
[INFO] [stdout]    |
[INFO] [stdout] 92 |                         for (j, template_item) in template.iter().enumerate() {
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expression`
[INFO] [stdout]   --> src/evaluator/expressions.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn evaluate_spread(&self, expression: &Expr) -> Result<Value> {
[INFO] [stdout]    |                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_numeric` is never used
[INFO] [stdout]   --> src/value/types.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl DataType {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn is_numeric(&self) -> bool {
[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 associated items are never used
[INFO] [stdout]    --> src/value/types.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | impl Value {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 105 |     /// Создать новое числовое значение
[INFO] [stdout] 106 |     pub fn number(n: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn string<S: Into<String>>(s: S) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn bool(b: bool) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn array(elements: Vec<Value>) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn object(map: HashMap<String, Value>) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn currency<S: Into<String>>(s: S) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn null() -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn path(path: PathBuf) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn path_pattern(path: PathBuf) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn table_from_rc(table: Rc<RefCell<Table>>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn is_numeric(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn is_null(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn is_array(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub fn is_object(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     pub fn is_table(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn get_type(&self) -> DataType {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn as_number(&self) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn as_string(&self) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn as_array(&self) -> Option<&Vec<Value>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn as_object(&self) -> Option<&HashMap<String, Value>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn as_table(&self) -> Option<Rc<RefCell<Table>>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn as_table_ref(&self) -> Option<&Rc<RefCell<Table>>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub fn as_path(&self) -> Option<&PathBuf> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_type_purity` and `is_homogeneous` are never used
[INFO] [stdout]    --> src/value/table.rs:141:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl TableColumn {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn get_type_purity(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn is_homogeneous(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/value/table.rs:247:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl Table {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn get_warnings(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub fn row_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn column_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn get_value(&self, row: usize, col: usize) -> Option<&Value> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn get_row(&self, row: usize) -> Option<&Vec<Value>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn get_column_by_name(&self, name: &str) -> Option<&TableColumn> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub fn get_column_index(&self, name: &str) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn get_column_values(&self, name: &str) -> Option<Vec<&Value>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 291 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 296 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_parse_number` is never used
[INFO] [stdout]    --> src/value/conversions.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn try_parse_number(s: &str) -> Option<f64> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_parse_bool` is never used
[INFO] [stdout]    --> src/value/conversions.rs:224:8
[INFO] [stdout]     |
[INFO] [stdout] 224 | pub fn try_parse_bool(s: &str) -> Option<bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_currency_string` is never used
[INFO] [stdout]    --> src/value/conversions.rs:233:8
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn normalize_currency_string(s: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_currency_symbols` is never used
[INFO] [stdout]    --> src/value/conversions.rs:238:8
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub fn get_currency_symbols() -> &'static [char] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_currency_codes` is never used
[INFO] [stdout]    --> src/value/conversions.rs:243:8
[INFO] [stdout]     |
[INFO] [stdout] 243 | pub fn get_currency_codes() -> &'static [&'static str] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/value/operations.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub trait ValueOperations {
[INFO] [stdout]    |           --------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 12 |     fn subtract(&self, other: &Value) -> Result<Value, String>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn multiply(&self, other: &Value) -> Result<Value, String>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn divide(&self, other: &Value) -> Result<Value, String>;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn modulo(&self, other: &Value) -> Result<Value, String>;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn equals(&self, other: &Value) -> bool;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn less_than(&self, other: &Value) -> Result<bool, String>;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn greater_than(&self, other: &Value) -> Result<bool, String>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn get_type(&self) -> DataType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn is_numeric(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn is_null(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn to_display_string(&self) -> String;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `subtract_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:181:8
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub fn subtract_values(left: &Value, right: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub fn multiply_values(left: &Value, right: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `divide_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:215:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub fn divide_values(left: &Value, right: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `modulo_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:241:8
[INFO] [stdout]     |
[INFO] [stdout] 241 | pub fn modulo_values(left: &Value, right: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `values_equal` is never used
[INFO] [stdout]    --> src/value/operations.rs:256:8
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub fn values_equal(left: &Value, right: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_values` is never used
[INFO] [stdout]    --> src/value/operations.rs:275:8
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub fn compare_values(left: &Value, right: &Value) -> Result<std::cmp::Ordering, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logical_and` is never used
[INFO] [stdout]    --> src/value/operations.rs:301:8
[INFO] [stdout]     |
[INFO] [stdout] 301 | pub fn logical_and(left: &Value, right: &Value) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logical_or` is never used
[INFO] [stdout]    --> src/value/operations.rs:308:8
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub fn logical_or(left: &Value, right: &Value) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logical_not` is never used
[INFO] [stdout]    --> src/value/operations.rs:315:8
[INFO] [stdout]     |
[INFO] [stdout] 315 | pub fn logical_not(value: &Value) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_boolean` is never used
[INFO] [stdout]    --> src/value/operations.rs:320:8
[INFO] [stdout]     |
[INFO] [stdout] 320 | pub fn to_boolean(value: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `negate_value` is never used
[INFO] [stdout]    --> src/value/operations.rs:337:8
[INFO] [stdout]     |
[INFO] [stdout] 337 | pub fn negate_value(value: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `abs_value` is never used
[INFO] [stdout]    --> src/value/operations.rs:346:8
[INFO] [stdout]     |
[INFO] [stdout] 346 | pub fn abs_value(value: &Value) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_truthy` is never used
[INFO] [stdout]    --> src/value/operations.rs:354:8
[INFO] [stdout]     |
[INFO] [stdout] 354 | pub fn is_truthy(value: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_falsy` is never used
[INFO] [stdout]    --> src/value/operations.rs:359:8
[INFO] [stdout]     |
[INFO] [stdout] 359 | pub fn is_falsy(value: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Sort` is never constructed
[INFO] [stdout]   --> src/value/lazy.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum LazyOperation {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 36 |     Sort {
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LazyOperation` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sort` is never used
[INFO] [stdout]   --> src/value/lazy.rs:92:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl LazyTable {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub fn sort(mut self, column: String, ascending: bool, line: usize) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OptimizedCsvReader` is never constructed
[INFO] [stdout]   --> src/builtins/file_io.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct OptimizedCsvReader {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/builtins/file_io.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl OptimizedCsvReader {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Создать новый оптимизированный читатель CSV
[INFO] [stdout]  22 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |     pub fn with_buffer_size(mut self, size: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |     pub fn with_chunk_size(mut self, size: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  43 |     pub fn read_csv_optimized(&self, path: &Path) -> Result<Table> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     fn process_chunk(&self, chunk: &[StringRecord], column_names: &[String]) -> Result<Vec<Vec<Value>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     fn process_chunk_sequential(&self, chunk: &[StringRecord], column_names: &[String]) -> Result<Vec<Vec<Value>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn process_chunk_parallel(&self, chunk: &[StringRecord], column_names: &[String]) -> Result<Vec<Vec<Value>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn parse_field_value(&self, field: &str) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn is_date_like(&self, value: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OptimizedExcelReader` is never constructed
[INFO] [stdout]    --> src/builtins/file_io.rs:186:12
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub struct OptimizedExcelReader;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `read_excel_optimized` are never used
[INFO] [stdout]    --> src/builtins/file_io.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 188 | impl OptimizedExcelReader {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 189 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn read_excel_optimized(&self, _path: &Path) -> Result<Table> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileCache` is never constructed
[INFO] [stdout]    --> src/builtins/file_io.rs:205:12
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct FileCache {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, `insert`, `clear`, and `size` are never used
[INFO] [stdout]    --> src/builtins/file_io.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | impl FileCache {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 211 |     /// Создать новый кэш файлов
[INFO] [stdout] 212 |     pub fn new(max_size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn get(&self, path: &Path) -> Option<Table> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub fn insert(&self, path: PathBuf, table: Table) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn clear(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_file_optimized` is never used
[INFO] [stdout]    --> src/builtins/file_io.rs:259:8
[INFO] [stdout]     |
[INFO] [stdout] 259 | pub fn read_file_optimized(path: &Path) -> Result<Table> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_functions_by_category`, `get_categories`, and `get_all_functions` are never used
[INFO] [stdout]    --> src/builtins/registry.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl FunctionRegistry {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub fn get_functions_by_category(&self, category: &str) -> Vec<&FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn get_categories(&self) -> Vec<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn get_all_functions(&self) -> &HashMap<&'static str, FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_function_info` is never used
[INFO] [stdout]    --> src/builtins/registry.rs:325:8
[INFO] [stdout]     |
[INFO] [stdout] 325 | pub fn get_function_info(name: &str) -> Option<&FunctionInfo> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_functions_by_category` is never used
[INFO] [stdout]    --> src/builtins/registry.rs:330:8
[INFO] [stdout]     |
[INFO] [stdout] 330 | pub fn get_functions_by_category(category: &str) -> Vec<&FunctionInfo> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_all_categories` is never used
[INFO] [stdout]    --> src/builtins/registry.rs:335:8
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub fn get_all_categories() -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/interpreter/mod.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl Interpreter {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn exec_multiline(&mut self, code: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn define_function(&mut self, name: String, parameters: Vec<String>, body: Vec<String>, is_global: bool) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub fn add_user_function(&mut self, function: UserFunction) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 465 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 487 |     pub fn find_exception_handler(&self) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 504 |     pub fn deactivate_try_blocks_until(&mut self, until_index: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 545 |     pub fn is_in_function(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 550 |     pub fn get_recursion_depth(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/interpreter/user_functions.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl UserFunction {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 13 |     pub fn new(name: String, parameters: Vec<String>, body: Vec<String>, is_global: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_simple`, `new_minimal`, `can_handle_exception`, `is_active`, and `deactivate` are never used
[INFO] [stdout]   --> src/interpreter/user_functions.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl TryBlock {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn new_simple(block_id: usize, nesting_level: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn new_minimal(block_id: usize, line: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn can_handle_exception(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub fn is_active(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn deactivate(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_all_functions`, `remove_function`, and `clear` are never used
[INFO] [stdout]    --> src/interpreter/user_functions.rs:122:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl UserFunctionManager {
[INFO] [stdout]     | ------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn get_all_functions(&self) -> &HashMap<String, UserFunction> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn remove_function(&mut self, name: &str) -> Option<UserFunction> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `clear`, `function_depth`, `loop_depth`, `is_in_function`, and `is_in_loop` are never used
[INFO] [stdout]    --> src/interpreter/variables.rs:142:12
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl VariableManager {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn function_depth(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn loop_depth(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn is_in_function(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn is_in_loop(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ControlFlowHandler` is never constructed
[INFO] [stdout]  --> src/interpreter/control_flow.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ControlFlowHandler;
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/interpreter/control_flow.rs:11:12
[INFO] [stdout]     |
[INFO] [stdout]   9 | impl ControlFlowHandler {
[INFO] [stdout]     | ----------------------- associated functions in this implementation
[INFO] [stdout]  10 |     /// Выполнить условную конструкцию if/else
[INFO] [stdout]  11 |     pub fn execute_if(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  30 |     pub fn execute_for(
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn execute_try(
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn execute_block(interpreter: &mut Interpreter, lines: &[String]) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     fn iterate_over_array(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     fn iterate_over_table(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     fn iterate_over_string(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     fn iterate_over_object(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn execute_nested_if(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     pub fn execute_while(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     fn to_bool(value: &Value) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FileSystemError` and `ExpressionError` are never constructed
[INFO] [stdout]   --> src/error.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum DataCodeError {
[INFO] [stdout]    |          ------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 40 |     FileSystemError {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     ExpressionError {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DataCodeError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `AlreadyDefined` and `InvalidScope` are never constructed
[INFO] [stdout]   --> src/error.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub enum VariableErrorType {
[INFO] [stdout]    |          ----------------- variants in this enum
[INFO] [stdout] 62 |     NotFound,
[INFO] [stdout] 63 |     AlreadyDefined,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 64 |     InvalidScope,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VariableErrorType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InvalidArgument` and `InvalidReturn` are never constructed
[INFO] [stdout]   --> src/error.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub enum FunctionErrorType {
[INFO] [stdout]    |          ----------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 71 |     InvalidArgument { index: usize, expected: String, found: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 72 |     InvalidReturn,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionErrorType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NotFound`, `PermissionDenied`, `InvalidPath`, `UnsupportedFormat`, `ReadError`, and `WriteError` are never constructed
[INFO] [stdout]   --> src/error.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub enum FileSystemErrorType {
[INFO] [stdout]    |          ------------------- variants in this enum
[INFO] [stdout] 77 |     NotFound,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 78 |     PermissionDenied,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 79 |     InvalidPath,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 80 |     UnsupportedFormat,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 81 |     ReadError(String),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 82 |     WriteError(String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileSystemErrorType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `file_not_found` and `expression_error` are never used
[INFO] [stdout]    --> src/error.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl DataCodeError {
[INFO] [stdout]     | ------------------ associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn file_not_found(path: &str, line: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |     pub fn expression_error(expression: &str, message: &str, line: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse_statement` is never used
[INFO] [stdout]   --> src/parser/mod.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn parse_statement(&mut self) -> Result<Expr> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PathJoin` is never constructed
[INFO] [stdout]   --> src/parser/tokens.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub enum Token {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     PathJoin,       // / (для путей)
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TryBlock` and `ThrowStatement` are never constructed
[INFO] [stdout]    --> src/parser/tokens.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout]  72 | pub enum Expr {
[INFO] [stdout]     |          ---- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 105 |     TryBlock {
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     ThrowStatement {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PathJoin` is never constructed
[INFO] [stdout]    --> src/parser/tokens.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub enum BinaryOp {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 124 |     PathJoin,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BinaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_literal`, `is_operator`, and `is_keyword` are never used
[INFO] [stdout]    --> src/parser/tokens.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 142 | impl Token {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 143 |     /// Проверить, является ли токен литералом
[INFO] [stdout] 144 |     pub fn is_literal(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn is_operator(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn is_keyword(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `precedence` and `is_left_associative` are never used
[INFO] [stdout]    --> src/parser/tokens.rs:170:12
[INFO] [stdout]     |
[INFO] [stdout] 168 | impl BinaryOp {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] 169 |     /// Получить приоритет оператора (чем больше число, тем выше приоритет)
[INFO] [stdout] 170 |     pub fn precedence(&self) -> u8 {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn is_left_associative(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StatementParser` is never constructed
[INFO] [stdout]   --> src/parser/statements.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct StatementParser<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `parse_statement` are never used
[INFO] [stdout]   --> src/parser/statements.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl<'a> StatementParser<'a> {
[INFO] [stdout]    | ---------------------------- associated items in this implementation
[INFO] [stdout] 16 |     /// Создать новый парсер операторов
[INFO] [stdout] 17 |     pub fn new(parser: &'a mut Parser) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn parse_statement(&mut self) -> Result<Expr> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `variables` is never used
[INFO] [stdout]   --> src/evaluator/mod.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<'a> Evaluator<'a> {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn variables(&self) -> &HashMap<String, Value> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_and_evaluate` is never used
[INFO] [stdout]    --> src/evaluator/mod.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn parse_and_evaluate(expr_str: &str, variables: &HashMap<String, Value>, line: usize) -> Result<Value> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ExpressionEvaluable` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:127:11
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub trait ExpressionEvaluable {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_constant_expression` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn is_constant_expression(expr: &Expr) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_variables_in_expression` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub fn get_variables_in_expression(expr: &Expr) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_variables` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:163:8
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn collect_variables(expr: &Expr, variables: &mut Vec<String>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `expression_complexity` is never used
[INFO] [stdout]    --> src/evaluator/expressions.rs:198:12
[INFO] [stdout]     |
[INFO] [stdout] 198 |     pub fn expression_complexity(expr: &Expr) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `OperatorEvaluable` is never used
[INFO] [stdout]    --> src/evaluator/operators.rs:225:11
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub trait OperatorEvaluable {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/evaluator/functions.rs:96:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl<'a> FunctionCallHandler<'a> {
[INFO] [stdout]     | -------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn validate_arg_count(&self, function_name: &str, expected: usize, actual: usize) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn validate_min_arg_count(&self, function_name: &str, min_expected: usize, actual: usize) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn validate_arg_count_range(&self, function_name: &str, min: usize, max: usize, actual: usize) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn validate_arg_type(&self, function_name: &str, arg_index: usize, expected_type: &str, actual: &Value) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn get_number_arg(&self, function_name: &str, args: &[Value], index: usize) -> Result<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     pub fn get_string_arg(&self, function_name: &str, args: &[Value], index: usize) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn get_array_arg(&self, function_name: &str, args: &[Value], index: usize) -> Result<Vec<Value>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn get_bool_arg(&self, function_name: &str, args: &[Value], index: usize) -> Result<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FunctionCallable` is never used
[INFO] [stdout]    --> src/evaluator/functions.rs:230:11
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub trait FunctionCallable {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FunctionInfo` is never constructed
[INFO] [stdout]    --> src/evaluator/functions.rs:249:12
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub struct FunctionInfo {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `accepts_arg_count` are never used
[INFO] [stdout]    --> src/evaluator/functions.rs:259:12
[INFO] [stdout]     |
[INFO] [stdout] 257 | impl FunctionInfo {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 258 |     /// Создать новую информацию о функции
[INFO] [stdout] 259 |     pub fn new(name: String, min_args: usize, max_args: Option<usize>, description: String, category: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn accepts_arg_count(&self, count: usize) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FunctionRegistry` is never constructed
[INFO] [stdout]    --> src/evaluator/functions.rs:276:12
[INFO] [stdout]     |
[INFO] [stdout] 276 | pub struct FunctionRegistry {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `register`, `get_function_info`, `get_all_functions`, and `get_functions_by_category` are never used
[INFO] [stdout]    --> src/evaluator/functions.rs:282:12
[INFO] [stdout]     |
[INFO] [stdout] 280 | impl FunctionRegistry {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 281 |     /// Создать новый реестр функций
[INFO] [stdout] 282 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn register(&mut self, info: FunctionInfo) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub fn get_function_info(&self, name: &str) -> Option<&FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 |     pub fn get_all_functions(&self) -> &std::collections::HashMap<String, FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn get_functions_by_category(&self, category: &str) -> Vec<&FunctionInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Indexable` is never used
[INFO] [stdout]    --> src/evaluator/indexing.rs:245:11
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub trait Indexable {
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HasMembers` is never used
[INFO] [stdout]    --> src/evaluator/indexing.rs:277:11
[INFO] [stdout]     |
[INFO] [stdout] 277 | pub trait HasMembers {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/builtins/registry.rs:309:1
[INFO] [stdout]     |
[INFO] [stdout] 309 | /// Глобальный реестр функций с оптимизированным доступом
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/profiler/mod.rs:237:1
[INFO] [stdout]     |
[INFO] [stdout] 237 | /// Глобальный профилировщик
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/profiler/logger.rs:322:1
[INFO] [stdout]     |
[INFO] [stdout] 322 | /// Глобальный логгер производительности
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/profiler/monitor.rs:304:1
[INFO] [stdout]     |
[INFO] [stdout] 304 | /// Глобальный монитор оптимизаций
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]   --> src/builtins/array.rs:92:30
[INFO] [stdout]    |
[INFO] [stdout] 92 |                         for (j, template_item) in template.iter().enumerate() {
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expression`
[INFO] [stdout]   --> src/evaluator/expressions.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn evaluate_spread(&self, expression: &Expr) -> Result<Value> {
[INFO] [stdout]    |                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expression`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/profiler/mod.rs:29:24
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn start_timer(&self, operation: &str) -> TimerGuard {
[INFO] [stdout]    |                        ^^^^^                      ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn start_timer(&self, operation: &str) -> TimerGuard<'_> {
[INFO] [stdout]    |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `data_code` (lib test); 7 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/bin/rustc --crate-name data_code --edition=2021 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --test --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=4aac7d853adc7346 -C extra-filename=-e0df43080434e495 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern anyhow=/opt/rustwide/target/debug/deps/libanyhow-1062fd8720902979.rlib --extern calamine=/opt/rustwide/target/debug/deps/libcalamine-2faf8191209a56d3.rlib --extern chrono=/opt/rustwide/target/debug/deps/libchrono-c10d1c0d8e4d681e.rlib --extern csv=/opt/rustwide/target/debug/deps/libcsv-06a8a685f62db352.rlib --extern futures_util=/opt/rustwide/target/debug/deps/libfutures_util-a548fd4f261a9d4e.rlib --extern glob=/opt/rustwide/target/debug/deps/libglob-b1d792528bd08356.rlib --extern lapin=/opt/rustwide/target/debug/deps/liblapin-e84aa35b995efa6e.rlib --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-b3603208c0de2608.rlib --extern memmap2=/opt/rustwide/target/debug/deps/libmemmap2-c34f35bdfb08cb1e.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-4b3930cb87f403da.rlib --extern rayon=/opt/rustwide/target/debug/deps/librayon-1b231379cea2af6f.rlib --extern regex=/opt/rustwide/target/debug/deps/libregex-8472ba6b36f0fffa.rlib --extern rustyline=/opt/rustwide/target/debug/deps/librustyline-c512c2bd47729cce.rlib --extern serde=/opt/rustwide/target/debug/deps/libserde-048657cb08a899fa.rlib --extern serde_json=/opt/rustwide/target/debug/deps/libserde_json-055de53f88305d45.rlib --extern tokio=/opt/rustwide/target/debug/deps/libtokio-6933c1ba3f78fae7.rlib --cap-lints=forbid -L native=/opt/rustwide/target/debug/build/ring-c5b67ca744be352d/out` (signal: 9, SIGKILL: kill)
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "8588bdaf444e35d1d1bc78842ecd0bb41415e81a7fbfc1c2b24bcfcc4fc8670e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8588bdaf444e35d1d1bc78842ecd0bb41415e81a7fbfc1c2b24bcfcc4fc8670e", kill_on_drop: false }`
[INFO] [stdout] 8588bdaf444e35d1d1bc78842ecd0bb41415e81a7fbfc1c2b24bcfcc4fc8670e
