[INFO] cloning repository https://github.com/gwythyr/swc-nestjs-swagger-plugin [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/gwythyr/swc-nestjs-swagger-plugin" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgwythyr%2Fswc-nestjs-swagger-plugin", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgwythyr%2Fswc-nestjs-swagger-plugin'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 4298a05c4f3ae976c85d195bfef1be9ea6f84733 [INFO] checking gwythyr/swc-nestjs-swagger-plugin against try#1383df06117fd218068d1f39fd5326256dd4a348 for pr-145181 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgwythyr%2Fswc-nestjs-swagger-plugin" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-1-tc2/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/gwythyr/swc-nestjs-swagger-plugin [INFO] finished tweaking git repo https://github.com/gwythyr/swc-nestjs-swagger-plugin [INFO] tweaked toml for git repo https://github.com/gwythyr/swc-nestjs-swagger-plugin written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/gwythyr/swc-nestjs-swagger-plugin on toolchain 1383df06117fd218068d1f39fd5326256dd4a348 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1383df06117fd218068d1f39fd5326256dd4a348" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/gwythyr/swc-nestjs-swagger-plugin 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" "+1383df06117fd218068d1f39fd5326256dd4a348" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ae6f63d130afcfff7f91f5ba9fdb2a74d52830289c6a2ea2d23a94dcfb480a0d" "/opt/rustwide/cargo-home/bin/cargo" "+1383df06117fd218068d1f39fd5326256dd4a348" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 058a9eadb2513bd3e573759bcdb312bca8dd55a69eb08bdf60779eed03698d64 [INFO] running `Command { std: "docker" "start" "-a" "058a9eadb2513bd3e573759bcdb312bca8dd55a69eb08bdf60779eed03698d64", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "058a9eadb2513bd3e573759bcdb312bca8dd55a69eb08bdf60779eed03698d64", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "058a9eadb2513bd3e573759bcdb312bca8dd55a69eb08bdf60779eed03698d64", kill_on_drop: false }` [INFO] [stdout] 058a9eadb2513bd3e573759bcdb312bca8dd55a69eb08bdf60779eed03698d64 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ae6f63d130afcfff7f91f5ba9fdb2a74d52830289c6a2ea2d23a94dcfb480a0d" "/opt/rustwide/cargo-home/bin/cargo" "+1383df06117fd218068d1f39fd5326256dd4a348" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f845d86efc0cf5463f8be609a8da885c96f45ef125205871f75acf8542b9faa3 [INFO] running `Command { std: "docker" "start" "-a" "f845d86efc0cf5463f8be609a8da885c96f45ef125205871f75acf8542b9faa3", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Checking cfg-if v1.0.1 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Checking writeable v0.6.1 [INFO] [stderr] Checking litemap v0.8.0 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Compiling icu_normalizer_data v2.0.0 [INFO] [stderr] Compiling icu_properties_data v2.0.1 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Checking simdutf8 v0.1.5 [INFO] [stderr] Checking allocator-api2 v0.2.21 [INFO] [stderr] Checking hashbrown v0.15.4 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Compiling serde_json v1.0.141 [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Checking rustc-hash v2.1.1 [INFO] [stderr] Checking bytes v1.10.1 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Checking new_debug_unreachable v1.0.6 [INFO] [stderr] Checking tap v1.0.1 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking utf8_iter v1.0.4 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Checking outref v0.5.2 [INFO] [stderr] Checking funty v2.0.0 [INFO] [stderr] Checking wyz v0.5.1 [INFO] [stderr] Checking vsimd v0.8.0 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking uuid v1.17.0 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking scoped-tls v1.0.1 [INFO] [stderr] Checking data-encoding v2.9.0 [INFO] [stderr] Checking unicode-id-start v1.3.1 [INFO] [stderr] Checking if_chain v1.0.2 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking unicode-width v0.1.14 [INFO] [stderr] Checking better_scoped_tls v1.0.1 [INFO] [stderr] Checking siphasher v0.3.11 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Checking bitvec v1.0.1 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling siphasher v1.0.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling camino v1.1.10 [INFO] [stderr] Checking swc_visit v2.0.1 [INFO] [stderr] Checking base64-simd v0.8.0 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Checking bitflags v2.9.1 [INFO] [stderr] Checking phf_shared v0.11.3 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling cc v1.2.30 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Checking parking_lot v0.12.4 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling phf_generator v0.11.3 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Compiling owo-colors v4.2.2 [INFO] [stderr] Compiling smartstring v1.0.1 [INFO] [stderr] Checking regex-syntax v0.6.29 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking unicode-width v0.2.1 [INFO] [stderr] Checking unicode-linebreak v0.1.5 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Compiling vergen-lib v0.1.6 [INFO] [stderr] Checking textwrap v0.16.2 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Compiling vergen v9.0.6 [INFO] [stderr] Checking thread_local v1.1.9 [INFO] [stderr] Checking ryu-js v1.0.2 [INFO] [stderr] Compiling rustix v1.0.8 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling relative-path v1.9.3 [INFO] [stderr] Compiling glob v0.3.2 [INFO] [stderr] Checking equivalent v1.0.2 [INFO] [stderr] Checking yansi v1.0.1 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Checking diff v0.1.13 [INFO] [stderr] Compiling seq-macro v0.3.6 [INFO] [stderr] Checking indexmap v2.10.0 [INFO] [stderr] Checking castaway v0.2.4 [INFO] [stderr] Checking num_cpus v1.17.0 [INFO] [stderr] Checking bumpalo v3.19.0 [INFO] [stderr] Checking par-core v2.0.0 [INFO] [stderr] Checking cpufeatures v0.2.17 [INFO] [stderr] Checking linux-raw-sys v0.9.4 [INFO] [stderr] Checking difference v2.0.0 [INFO] [stderr] Checking compact_str v0.7.1 [INFO] [stderr] Compiling psm v0.1.26 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling stacker v0.1.21 [INFO] [stderr] Checking pretty_assertions v1.4.1 [INFO] [stderr] Checking ascii v1.1.0 [INFO] [stderr] Checking swc_allocator v4.0.1 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Checking fastrand v2.3.0 [INFO] [stderr] Checking ansi_term v0.12.1 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Checking swc_plugin v1.0.1 [INFO] [stderr] Checking rustc-hash v1.1.0 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking regex-automata v0.1.10 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking matchers v0.1.0 [INFO] [stderr] Checking tempfile v3.20.0 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling swc_macros_common v1.0.1 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling ptr_meta_derive v0.3.0 [INFO] [stderr] Compiling bytecheck_derive v0.8.1 [INFO] [stderr] Compiling munge_macro v0.4.6 [INFO] [stderr] Compiling rkyv_derive v0.8.11 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling ast_node v3.0.3 [INFO] [stderr] Compiling swc_eq_ignore_macros v1.0.1 [INFO] [stderr] Compiling from_variant v2.0.2 [INFO] [stderr] Compiling phf_macros v0.11.3 [INFO] [stderr] Compiling is-macro v0.3.7 [INFO] [stderr] Checking ptr_meta v0.3.0 [INFO] [stderr] Compiling string_enum v1.0.2 [INFO] [stderr] Checking rancor v0.1.0 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling miette-derive v7.6.0 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Checking bytecheck v0.8.1 [INFO] [stderr] Checking munge v0.4.6 [INFO] [stderr] Compiling testing_macros v1.0.1 [INFO] [stderr] Checking phf v0.11.3 [INFO] [stderr] Compiling swc_ecma_codegen_macros v2.0.2 [INFO] [stderr] Compiling swc_trace_macro v2.0.2 [INFO] [stderr] Checking rend v0.5.2 [INFO] [stderr] Compiling swc_plugin_macro v1.1.0 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Checking yoke v0.8.0 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking tracing-subscriber v0.3.19 [INFO] [stderr] Checking zerovec v0.11.2 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Checking miette v7.6.0 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking potential_utf v0.1.2 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling derive_builder_core v0.20.2 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Compiling derive_builder_macro v0.20.2 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Compiling derive_builder v0.20.2 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.0.3 [INFO] [stderr] Checking url v2.5.4 [INFO] [stderr] Checking triomphe v0.1.14 [INFO] [stderr] Checking debugid v0.8.0 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking cargo-platform v0.1.9 [INFO] [stderr] Checking rkyv v0.8.11 [INFO] [stderr] Checking hstr v2.0.1 [INFO] [stderr] Checking cargo_metadata v0.18.1 [INFO] [stderr] Compiling cargo_metadata v0.19.2 [INFO] [stderr] Compiling swc_core v34.0.4 [INFO] [stderr] Checking bytes-str v0.2.7 [INFO] [stderr] Checking swc_atoms v7.0.0 [INFO] [stderr] Checking swc_sourcemap v9.3.3 [INFO] [stderr] Checking swc_common v14.0.2 [INFO] [stderr] Checking swc_ecma_ast v14.0.0 [INFO] [stderr] Checking swc_error_reporters v16.0.1 [INFO] [stderr] Checking swc_transform_common v8.0.0 [INFO] [stderr] Checking testing v15.0.0 [INFO] [stderr] Checking swc_ecma_testing v15.0.0 [INFO] [stderr] Checking swc_ecma_visit v14.0.0 [INFO] [stderr] Checking swc_ecma_lexer v22.0.2 [INFO] [stderr] Checking swc_ecma_codegen v16.0.0 [INFO] [stderr] Checking swc_plugin_proxy v14.0.0 [INFO] [stderr] Checking swc_ecma_utils v19.0.1 [INFO] [stderr] Checking swc_ecma_parser v22.0.3 [INFO] [stderr] Checking swc_ecma_transforms_base v23.0.0 [INFO] [stderr] Checking swc_ecma_transforms_testing v26.0.0 [INFO] [stderr] Checking swc-nestjs-swagger v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `visit_mut_pass` [INFO] [stdout] --> src/lib.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | visit::{visit_mut_pass, VisitMut, VisitMutWith}, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Span` and `SyntaxContext` [INFO] [stdout] --> src/visitors/model_visitor.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | common::{Span, DUMMY_SP, SyntaxContext}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `types::*` [INFO] [stdout] --> src/visitors/model_visitor.rs:8:32 [INFO] [stdout] | [INFO] [stdout] 8 | constants::{decorators::*, types::*, class_transformer::*, class_validator::*}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Span` and `SyntaxContext` [INFO] [stdout] --> src/visitors/model_visitor.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | common::{Span, DUMMY_SP, SyntaxContext}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `types::*` [INFO] [stdout] --> src/visitors/model_visitor.rs:8:32 [INFO] [stdout] | [INFO] [stdout] 8 | constants::{decorators::*, types::*, class_transformer::*, class_validator::*}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `class_name` [INFO] [stdout] --> src/visitors/model_visitor.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let class_name = class_decl.ident.sym.to_string(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_email_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:401:21 [INFO] [stdout] | [INFO] [stdout] 401 | if let Some(is_email_decorator) = get_decorator_by_name(IS_EMAIL_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_email_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_url_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:408:21 [INFO] [stdout] | [INFO] [stdout] 408 | if let Some(is_url_decorator) = get_decorator_by_name(IS_URL_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_url_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_uuid_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:415:21 [INFO] [stdout] | [INFO] [stdout] 415 | if let Some(is_uuid_decorator) = get_decorator_by_name(IS_UUID_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_uuid_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_date_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:422:21 [INFO] [stdout] | [INFO] [stdout] 422 | if let Some(is_date_decorator) = get_decorator_by_name(IS_DATE_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_date_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_int_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:430:21 [INFO] [stdout] | [INFO] [stdout] 430 | if let Some(is_int_decorator) = get_decorator_by_name(IS_INT_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_int_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_positive_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:437:21 [INFO] [stdout] | [INFO] [stdout] 437 | if let Some(is_positive_decorator) = get_decorator_by_name(IS_POSITIVE_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_positive_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_negative_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:448:21 [INFO] [stdout] | [INFO] [stdout] 448 | if let Some(is_negative_decorator) = get_decorator_by_name(IS_NEGATIVE_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_negative_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_array_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:472:21 [INFO] [stdout] | [INFO] [stdout] 472 | if let Some(is_array_decorator) = get_decorator_by_name(IS_ARRAY_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_array_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `class_name` [INFO] [stdout] --> src/visitors/model_visitor.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let class_name = class_decl.ident.sym.to_string(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_email_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:401:21 [INFO] [stdout] | [INFO] [stdout] 401 | if let Some(is_email_decorator) = get_decorator_by_name(IS_EMAIL_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_email_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_url_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:408:21 [INFO] [stdout] | [INFO] [stdout] 408 | if let Some(is_url_decorator) = get_decorator_by_name(IS_URL_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_url_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_uuid_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:415:21 [INFO] [stdout] | [INFO] [stdout] 415 | if let Some(is_uuid_decorator) = get_decorator_by_name(IS_UUID_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_uuid_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_date_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:422:21 [INFO] [stdout] | [INFO] [stdout] 422 | if let Some(is_date_decorator) = get_decorator_by_name(IS_DATE_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_date_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_int_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:430:21 [INFO] [stdout] | [INFO] [stdout] 430 | if let Some(is_int_decorator) = get_decorator_by_name(IS_INT_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_int_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_positive_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:437:21 [INFO] [stdout] | [INFO] [stdout] 437 | if let Some(is_positive_decorator) = get_decorator_by_name(IS_POSITIVE_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_positive_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_negative_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:448:21 [INFO] [stdout] | [INFO] [stdout] 448 | if let Some(is_negative_decorator) = get_decorator_by_name(IS_NEGATIVE_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_negative_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_array_decorator` [INFO] [stdout] --> src/visitors/model_visitor.rs:472:21 [INFO] [stdout] | [INFO] [stdout] 472 | if let Some(is_array_decorator) = get_decorator_by_name(IS_ARRAY_DECORATOR, decorators) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_array_decorator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `type_imports`, `collected_metadata`, and `controller_visitor` are never read [INFO] [stdout] --> src/lib.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct TransformVisitor { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 49 | type_imports: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 50 | collected_metadata: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 51 | model_visitor: ModelClassVisitor, [INFO] [stdout] 52 | controller_visitor: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `METADATA_FACTORY_NAME` is never used [INFO] [stdout] --> src/constants.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const METADATA_FACTORY_NAME: &str = "_OPENAPI_METADATA_FACTORY"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_PROPERTY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub const API_PROPERTY_DECORATOR: &str = "ApiProperty"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_HIDE_PROPERTY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | pub const API_HIDE_PROPERTY_DECORATOR: &str = "ApiHideProperty"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_PARAM_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | pub const API_PARAM_DECORATOR: &str = "ApiParam"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_QUERY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:31:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub const API_QUERY_DECORATOR: &str = "ApiQuery"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_BODY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | pub const API_BODY_DECORATOR: &str = "ApiBody"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXPOSE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:40:15 [INFO] [stdout] | [INFO] [stdout] 40 | pub const EXPOSE_DECORATOR: &str = "Expose"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXCLUDE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:43:15 [INFO] [stdout] | [INFO] [stdout] 43 | pub const EXCLUDE_DECORATOR: &str = "Exclude"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_OPTIONAL_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:49:15 [INFO] [stdout] | [INFO] [stdout] 49 | pub const IS_OPTIONAL_DECORATOR: &str = "IsOptional"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_STRING_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 52 | pub const IS_STRING_DECORATOR: &str = "IsString"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_NUMBER_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:55:15 [INFO] [stdout] | [INFO] [stdout] 55 | pub const IS_NUMBER_DECORATOR: &str = "IsNumber"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_BOOLEAN_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:58:15 [INFO] [stdout] | [INFO] [stdout] 58 | pub const IS_BOOLEAN_DECORATOR: &str = "IsBoolean"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_ARRAY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:61:15 [INFO] [stdout] | [INFO] [stdout] 61 | pub const IS_ARRAY_DECORATOR: &str = "IsArray"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_ENUM_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:64:15 [INFO] [stdout] | [INFO] [stdout] 64 | pub const IS_ENUM_DECORATOR: &str = "IsEnum"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_IN_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:67:15 [INFO] [stdout] | [INFO] [stdout] 67 | pub const IS_IN_DECORATOR: &str = "IsIn"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LENGTH_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:70:15 [INFO] [stdout] | [INFO] [stdout] 70 | pub const LENGTH_DECORATOR: &str = "Length"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | pub const MIN_DECORATOR: &str = "Min"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:76:15 [INFO] [stdout] | [INFO] [stdout] 76 | pub const MAX_DECORATOR: &str = "Max"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_LENGTH_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:79:15 [INFO] [stdout] | [INFO] [stdout] 79 | pub const MIN_LENGTH_DECORATOR: &str = "MinLength"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_LENGTH_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:82:15 [INFO] [stdout] | [INFO] [stdout] 82 | pub const MAX_LENGTH_DECORATOR: &str = "MaxLength"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MATCHES_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:85:15 [INFO] [stdout] | [INFO] [stdout] 85 | pub const MATCHES_DECORATOR: &str = "Matches"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_EMAIL_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:88:15 [INFO] [stdout] | [INFO] [stdout] 88 | pub const IS_EMAIL_DECORATOR: &str = "IsEmail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_URL_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:91:15 [INFO] [stdout] | [INFO] [stdout] 91 | pub const IS_URL_DECORATOR: &str = "IsUrl"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_UUID_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:94:15 [INFO] [stdout] | [INFO] [stdout] 94 | pub const IS_UUID_DECORATOR: &str = "IsUUID"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_DATE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:97:15 [INFO] [stdout] | [INFO] [stdout] 97 | pub const IS_DATE_DECORATOR: &str = "IsDate"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_INT_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:100:15 [INFO] [stdout] | [INFO] [stdout] 100 | pub const IS_INT_DECORATOR: &str = "IsInt"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_POSITIVE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:103:15 [INFO] [stdout] | [INFO] [stdout] 103 | pub const IS_POSITIVE_DECORATOR: &str = "IsPositive"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_NEGATIVE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:106:15 [INFO] [stdout] | [INFO] [stdout] 106 | pub const IS_NEGATIVE_DECORATOR: &str = "IsNegative"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STRING_TYPE` is never used [INFO] [stdout] --> src/constants.rs:111:15 [INFO] [stdout] | [INFO] [stdout] 111 | pub const STRING_TYPE: &str = "string"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NUMBER_TYPE` is never used [INFO] [stdout] --> src/constants.rs:112:15 [INFO] [stdout] | [INFO] [stdout] 112 | pub const NUMBER_TYPE: &str = "number"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOOLEAN_TYPE` is never used [INFO] [stdout] --> src/constants.rs:113:15 [INFO] [stdout] | [INFO] [stdout] 113 | pub const BOOLEAN_TYPE: &str = "boolean"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OBJECT_TYPE` is never used [INFO] [stdout] --> src/constants.rs:114:15 [INFO] [stdout] | [INFO] [stdout] 114 | pub const OBJECT_TYPE: &str = "object"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARRAY_TYPE` is never used [INFO] [stdout] --> src/constants.rs:115:15 [INFO] [stdout] | [INFO] [stdout] 115 | pub const ARRAY_TYPE: &str = "array"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NULL_TYPE` is never used [INFO] [stdout] --> src/constants.rs:116:15 [INFO] [stdout] | [INFO] [stdout] 116 | pub const NULL_TYPE: &str = "null"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UNDEFINED_TYPE` is never used [INFO] [stdout] --> src/constants.rs:117:15 [INFO] [stdout] | [INFO] [stdout] 117 | pub const UNDEFINED_TYPE: &str = "undefined"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STRING` is never used [INFO] [stdout] --> src/constants.rs:122:15 [INFO] [stdout] | [INFO] [stdout] 122 | pub const STRING: &str = "string"; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NUMBER` is never used [INFO] [stdout] --> src/constants.rs:123:15 [INFO] [stdout] | [INFO] [stdout] 123 | pub const NUMBER: &str = "number"; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INTEGER` is never used [INFO] [stdout] --> src/constants.rs:124:15 [INFO] [stdout] | [INFO] [stdout] 124 | pub const INTEGER: &str = "integer"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOOLEAN` is never used [INFO] [stdout] --> src/constants.rs:125:15 [INFO] [stdout] | [INFO] [stdout] 125 | pub const BOOLEAN: &str = "boolean"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARRAY` is never used [INFO] [stdout] --> src/constants.rs:126:15 [INFO] [stdout] | [INFO] [stdout] 126 | pub const ARRAY: &str = "array"; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OBJECT` is never used [INFO] [stdout] --> src/constants.rs:127:15 [INFO] [stdout] | [INFO] [stdout] 127 | pub const OBJECT: &str = "object"; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_string_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn is_string_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_number_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn is_number_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_boolean_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn is_boolean_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_array_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn is_array_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_object_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn is_object_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_array_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn is_array_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_union_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn is_union_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_string_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn is_string_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_number_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn is_number_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_boolean_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn is_boolean_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_class_decorators` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:92:8 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn get_class_decorators(class: &Class) -> &[Decorator] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_property_decorators` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:97:8 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn get_property_decorators(prop: &ClassProp) -> &[Decorator] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_method_decorators` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:102:8 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn get_method_decorators(method: &ClassMethod) -> &[Decorator] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_decorator_named` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:161:8 [INFO] [stdout] | [INFO] [stdout] 161 | pub fn is_decorator_named(decorator: &Decorator, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ts_type_to_string` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:193:8 [INFO] [stdout] | [INFO] [stdout] 193 | pub fn ts_type_to_string(ts_type: &TsType) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ts_entity_name_to_string` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:239:8 [INFO] [stdout] | [INFO] [stdout] 239 | pub fn ts_entity_name_to_string(entity: &TsEntityName) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_type_arguments` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:253:8 [INFO] [stdout] | [INFO] [stdout] 253 | pub fn get_type_arguments(type_ref: &TsTypeRef) -> Vec<&Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_number_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:275:8 [INFO] [stdout] | [INFO] [stdout] 275 | pub fn create_number_literal(value: f64) -> Expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_boolean_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:284:8 [INFO] [stdout] | [INFO] [stdout] 284 | pub fn create_boolean_literal(value: bool) -> Expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_object_property` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:308:8 [INFO] [stdout] | [INFO] [stdout] 308 | pub fn create_object_property(key: &str, value: Expr) -> PropOrSpread { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `expr_to_string` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:356:8 [INFO] [stdout] | [INFO] [stdout] 356 | pub fn expr_to_string(expr: &Expr) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_string_value` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:384:8 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn extract_string_value(expr: &Expr) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_number_value` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:392:8 [INFO] [stdout] | [INFO] [stdout] 392 | pub fn extract_number_value(expr: &Expr) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_boolean_value` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:400:8 [INFO] [stdout] | [INFO] [stdout] 400 | pub fn extract_boolean_value(expr: &Expr) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_leading_comments` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:413:8 [INFO] [stdout] | [INFO] [stdout] 413 | pub fn has_leading_comments(span: Span) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_jsdoc_comments` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:421:8 [INFO] [stdout] | [INFO] [stdout] 421 | pub fn has_jsdoc_comments(_span: Span) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `object_has_property` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:432:8 [INFO] [stdout] | [INFO] [stdout] 432 | pub fn object_has_property(obj_lit: &ObjectLit, prop_name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_object_property_value` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:445:8 [INFO] [stdout] | [INFO] [stdout] 445 | pub fn get_object_property_value<'a>(obj_lit: &'a ObjectLit, prop_name: &str) -> Option<&'a Expr> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `array_contains_string` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:458:8 [INFO] [stdout] | [INFO] [stdout] 458 | pub fn array_contains_string(array_lit: &ArrayLit, value: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decorator_by_names` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn get_decorator_by_names<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decorator_by_name` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn get_decorator_by_name<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_decorator_names` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn has_decorator_names( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_decorator_name` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn has_decorator_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decorator_object_properties` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn get_decorator_object_properties(decorator: &Decorator) -> Vec<(&PropName, &Expr)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decorator_has_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:81:8 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn decorator_has_property(decorator: &Decorator, prop_name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decorator_property_value` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn get_decorator_property_value<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TypeReferenceDescriptor` is never constructed [INFO] [stdout] --> src/utils/plugin_utils.rs:104:12 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct TypeReferenceDescriptor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:114:12 [INFO] [stdout] | [INFO] [stdout] 113 | impl TypeReferenceDescriptor { [INFO] [stdout] | ---------------------------- associated function in this implementation [INFO] [stdout] 114 | pub fn new(type_name: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `analyze_type_reference` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn analyze_type_reference(ts_type: &TsType) -> TypeReferenceDescriptor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_optional_union_type` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:215:4 [INFO] [stdout] | [INFO] [stdout] 215 | fn is_optional_union_type(union: &TsUnionType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_non_undefined_union_type` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:222:4 [INFO] [stdout] | [INFO] [stdout] 222 | fn get_non_undefined_union_type(union: &TsUnionType) -> Option<&TsType> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_promise_or_observable_type` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:229:8 [INFO] [stdout] | [INFO] [stdout] 229 | pub fn is_promise_or_observable_type(type_str: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_property_key` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:238:8 [INFO] [stdout] | [INFO] [stdout] 238 | pub fn has_property_key(obj_lit: &ObjectLit, key: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_enum_values` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:243:8 [INFO] [stdout] | [INFO] [stdout] 243 | pub fn extract_enum_values(_ts_type: &TsType) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_dynamically_added` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:251:8 [INFO] [stdout] | [INFO] [stdout] 251 | pub fn is_dynamically_added(span: Span) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_output_extension` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn get_output_extension(file_name: &str) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_path` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:272:8 [INFO] [stdout] | [INFO] [stdout] 272 | pub fn convert_path(path: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `can_reference_node` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:310:8 [INFO] [stdout] | [INFO] [stdout] 310 | pub fn can_reference_node(expr: &Expr, options: &PluginOptions) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_optional_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:337:8 [INFO] [stdout] | [INFO] [stdout] 337 | pub fn is_optional_property(_key: &PropName) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_property_base_name` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:344:8 [INFO] [stdout] | [INFO] [stdout] 344 | pub fn get_property_base_name(key: &PropName) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `insert_at` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:353:8 [INFO] [stdout] | [INFO] [stdout] 353 | pub fn insert_at(string: &str, index: usize, substring: &str) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `camel_to_snake_case` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:362:8 [INFO] [stdout] | [INFO] [stdout] 362 | pub fn camel_to_snake_case(camel_case: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `snake_to_camel_case` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:377:8 [INFO] [stdout] | [INFO] [stdout] 377 | pub fn snake_to_camel_case(snake_case: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_valid_identifier` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:396:8 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn is_valid_identifier(name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_metadata_key` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:418:8 [INFO] [stdout] | [INFO] [stdout] 418 | pub fn generate_metadata_key(class_name: &str, property_name: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_metadata_factory_call` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:423:8 [INFO] [stdout] | [INFO] [stdout] 423 | pub fn create_metadata_factory_call( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_computed_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:437:8 [INFO] [stdout] | [INFO] [stdout] 437 | pub fn create_computed_property(key: Expr, value: Expr) -> PropOrSpread { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_type_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:448:8 [INFO] [stdout] | [INFO] [stdout] 448 | pub fn create_type_property(type_name: &str) -> PropOrSpread { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_is_array_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:453:8 [INFO] [stdout] | [INFO] [stdout] 453 | pub fn create_is_array_property(is_array: bool) -> PropOrSpread { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_metadata_factory_call`, `create_metadata_factory_method`, `is_static_member`, `is_private_member`, and `get_member_name` are never used [INFO] [stdout] --> src/visitors/abstract_visitor.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait AbstractFileVisitor { [INFO] [stdout] | ------------------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 84 | fn create_metadata_factory_call(&self, metadata_object: Expr) -> Expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn create_metadata_factory_method(&self, metadata_object: Expr) -> ClassMember { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 138 | fn is_static_member(&self, member: &ClassMember) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | fn is_private_member(&self, member: &ClassMember) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | fn get_member_name(&self, member: &ClassMember) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DefaultAbstractVisitor` is never constructed [INFO] [stdout] --> src/visitors/abstract_visitor.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | pub struct DefaultAbstractVisitor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `type_imports` and `collected_metadata` are never read [INFO] [stdout] --> src/visitors/model_visitor.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ModelClassVisitor { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 24 | /// Tracks type imports for proper code generation [INFO] [stdout] 25 | type_imports: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | collected_metadata: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/visitors/model_visitor.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl ModelClassVisitor { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn get_type_imports(&self) -> &FxHashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn get_collected_metadata(&self) -> &FxHashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn visit_class_declaration( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn visit_property_declaration( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | fn visit_constructor_declaration( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 217 | fn create_decorator_object_literal( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | fn create_type_property_assignments( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | fn map_typescript_to_openapi_type(&self, ts_type: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | fn create_description_property_assignments( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 325 | fn create_default_property_assignment( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | fn create_enum_property_assignments( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | fn create_validation_property_assignments( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 487 | fn process_length_decorator(&self, decorator: &Decorator) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 513 | fn process_min_max_decorator(&self, decorator: &Decorator, property_name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 529 | fn process_matches_decorator(&self, decorator: &Decorator) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 545 | fn process_enum_decorator(&self, decorator: &Decorator) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 563 | fn process_is_in_decorator(&self, decorator: &Decorator) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 588 | fn create_metadata_object(&self, class_metadata: &ClassMetadata) -> Expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 603 | fn is_class_exported(&self, _class_decl: &ClassDecl) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `type_imports` is never read [INFO] [stdout] --> src/visitors/controller_visitor.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct ControllerVisitor<'a> { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 37 | pub type_imports: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `get_collected_metadata` are never used [INFO] [stdout] --> src/visitors/controller_visitor.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 43 | impl<'a> ControllerVisitor<'a> { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 44 | /// Create a new controller visitor [INFO] [stdout] 45 | pub fn new(options: &'a PluginOptions, current_file_path: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn get_collected_metadata(&self) -> &FxHashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `type_imports`, `collected_metadata`, and `controller_visitor` are never read [INFO] [stdout] --> src/lib.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct TransformVisitor { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 49 | type_imports: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 50 | collected_metadata: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 51 | model_visitor: ModelClassVisitor, [INFO] [stdout] 52 | controller_visitor: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `METADATA_FACTORY_NAME` is never used [INFO] [stdout] --> src/constants.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const METADATA_FACTORY_NAME: &str = "_OPENAPI_METADATA_FACTORY"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_PROPERTY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub const API_PROPERTY_DECORATOR: &str = "ApiProperty"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_HIDE_PROPERTY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | pub const API_HIDE_PROPERTY_DECORATOR: &str = "ApiHideProperty"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_PARAM_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | pub const API_PARAM_DECORATOR: &str = "ApiParam"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_QUERY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:31:15 [INFO] [stdout] | [INFO] [stdout] 31 | pub const API_QUERY_DECORATOR: &str = "ApiQuery"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `API_BODY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | pub const API_BODY_DECORATOR: &str = "ApiBody"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXPOSE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:40:15 [INFO] [stdout] | [INFO] [stdout] 40 | pub const EXPOSE_DECORATOR: &str = "Expose"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXCLUDE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:43:15 [INFO] [stdout] | [INFO] [stdout] 43 | pub const EXCLUDE_DECORATOR: &str = "Exclude"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_OPTIONAL_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:49:15 [INFO] [stdout] | [INFO] [stdout] 49 | pub const IS_OPTIONAL_DECORATOR: &str = "IsOptional"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_STRING_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 52 | pub const IS_STRING_DECORATOR: &str = "IsString"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_NUMBER_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:55:15 [INFO] [stdout] | [INFO] [stdout] 55 | pub const IS_NUMBER_DECORATOR: &str = "IsNumber"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_BOOLEAN_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:58:15 [INFO] [stdout] | [INFO] [stdout] 58 | pub const IS_BOOLEAN_DECORATOR: &str = "IsBoolean"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_ARRAY_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:61:15 [INFO] [stdout] | [INFO] [stdout] 61 | pub const IS_ARRAY_DECORATOR: &str = "IsArray"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_ENUM_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:64:15 [INFO] [stdout] | [INFO] [stdout] 64 | pub const IS_ENUM_DECORATOR: &str = "IsEnum"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_IN_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:67:15 [INFO] [stdout] | [INFO] [stdout] 67 | pub const IS_IN_DECORATOR: &str = "IsIn"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LENGTH_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:70:15 [INFO] [stdout] | [INFO] [stdout] 70 | pub const LENGTH_DECORATOR: &str = "Length"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | pub const MIN_DECORATOR: &str = "Min"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:76:15 [INFO] [stdout] | [INFO] [stdout] 76 | pub const MAX_DECORATOR: &str = "Max"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_LENGTH_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:79:15 [INFO] [stdout] | [INFO] [stdout] 79 | pub const MIN_LENGTH_DECORATOR: &str = "MinLength"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_LENGTH_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:82:15 [INFO] [stdout] | [INFO] [stdout] 82 | pub const MAX_LENGTH_DECORATOR: &str = "MaxLength"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MATCHES_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:85:15 [INFO] [stdout] | [INFO] [stdout] 85 | pub const MATCHES_DECORATOR: &str = "Matches"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_EMAIL_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:88:15 [INFO] [stdout] | [INFO] [stdout] 88 | pub const IS_EMAIL_DECORATOR: &str = "IsEmail"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_URL_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:91:15 [INFO] [stdout] | [INFO] [stdout] 91 | pub const IS_URL_DECORATOR: &str = "IsUrl"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_UUID_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:94:15 [INFO] [stdout] | [INFO] [stdout] 94 | pub const IS_UUID_DECORATOR: &str = "IsUUID"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_DATE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:97:15 [INFO] [stdout] | [INFO] [stdout] 97 | pub const IS_DATE_DECORATOR: &str = "IsDate"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_INT_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:100:15 [INFO] [stdout] | [INFO] [stdout] 100 | pub const IS_INT_DECORATOR: &str = "IsInt"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_POSITIVE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:103:15 [INFO] [stdout] | [INFO] [stdout] 103 | pub const IS_POSITIVE_DECORATOR: &str = "IsPositive"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_NEGATIVE_DECORATOR` is never used [INFO] [stdout] --> src/constants.rs:106:15 [INFO] [stdout] | [INFO] [stdout] 106 | pub const IS_NEGATIVE_DECORATOR: &str = "IsNegative"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STRING_TYPE` is never used [INFO] [stdout] --> src/constants.rs:111:15 [INFO] [stdout] | [INFO] [stdout] 111 | pub const STRING_TYPE: &str = "string"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NUMBER_TYPE` is never used [INFO] [stdout] --> src/constants.rs:112:15 [INFO] [stdout] | [INFO] [stdout] 112 | pub const NUMBER_TYPE: &str = "number"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOOLEAN_TYPE` is never used [INFO] [stdout] --> src/constants.rs:113:15 [INFO] [stdout] | [INFO] [stdout] 113 | pub const BOOLEAN_TYPE: &str = "boolean"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OBJECT_TYPE` is never used [INFO] [stdout] --> src/constants.rs:114:15 [INFO] [stdout] | [INFO] [stdout] 114 | pub const OBJECT_TYPE: &str = "object"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARRAY_TYPE` is never used [INFO] [stdout] --> src/constants.rs:115:15 [INFO] [stdout] | [INFO] [stdout] 115 | pub const ARRAY_TYPE: &str = "array"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NULL_TYPE` is never used [INFO] [stdout] --> src/constants.rs:116:15 [INFO] [stdout] | [INFO] [stdout] 116 | pub const NULL_TYPE: &str = "null"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UNDEFINED_TYPE` is never used [INFO] [stdout] --> src/constants.rs:117:15 [INFO] [stdout] | [INFO] [stdout] 117 | pub const UNDEFINED_TYPE: &str = "undefined"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STRING` is never used [INFO] [stdout] --> src/constants.rs:122:15 [INFO] [stdout] | [INFO] [stdout] 122 | pub const STRING: &str = "string"; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NUMBER` is never used [INFO] [stdout] --> src/constants.rs:123:15 [INFO] [stdout] | [INFO] [stdout] 123 | pub const NUMBER: &str = "number"; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INTEGER` is never used [INFO] [stdout] --> src/constants.rs:124:15 [INFO] [stdout] | [INFO] [stdout] 124 | pub const INTEGER: &str = "integer"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOOLEAN` is never used [INFO] [stdout] --> src/constants.rs:125:15 [INFO] [stdout] | [INFO] [stdout] 125 | pub const BOOLEAN: &str = "boolean"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARRAY` is never used [INFO] [stdout] --> src/constants.rs:126:15 [INFO] [stdout] | [INFO] [stdout] 126 | pub const ARRAY: &str = "array"; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OBJECT` is never used [INFO] [stdout] --> src/constants.rs:127:15 [INFO] [stdout] | [INFO] [stdout] 127 | pub const OBJECT: &str = "object"; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_string_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn is_string_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_number_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn is_number_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_boolean_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn is_boolean_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_array_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn is_array_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_object_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn is_object_literal(expr: &Expr) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_array_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn is_array_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_union_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn is_union_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_string_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn is_string_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_number_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn is_number_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_boolean_type` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn is_boolean_type(ts_type: &TsType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_class_decorators` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:92:8 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn get_class_decorators(class: &Class) -> &[Decorator] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_property_decorators` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:97:8 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn get_property_decorators(prop: &ClassProp) -> &[Decorator] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_method_decorators` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:102:8 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn get_method_decorators(method: &ClassMethod) -> &[Decorator] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_decorator_named` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:161:8 [INFO] [stdout] | [INFO] [stdout] 161 | pub fn is_decorator_named(decorator: &Decorator, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ts_type_to_string` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:193:8 [INFO] [stdout] | [INFO] [stdout] 193 | pub fn ts_type_to_string(ts_type: &TsType) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ts_entity_name_to_string` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:239:8 [INFO] [stdout] | [INFO] [stdout] 239 | pub fn ts_entity_name_to_string(entity: &TsEntityName) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_type_arguments` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:253:8 [INFO] [stdout] | [INFO] [stdout] 253 | pub fn get_type_arguments(type_ref: &TsTypeRef) -> Vec<&Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_number_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:275:8 [INFO] [stdout] | [INFO] [stdout] 275 | pub fn create_number_literal(value: f64) -> Expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_boolean_literal` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:284:8 [INFO] [stdout] | [INFO] [stdout] 284 | pub fn create_boolean_literal(value: bool) -> Expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_object_property` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:308:8 [INFO] [stdout] | [INFO] [stdout] 308 | pub fn create_object_property(key: &str, value: Expr) -> PropOrSpread { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `expr_to_string` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:356:8 [INFO] [stdout] | [INFO] [stdout] 356 | pub fn expr_to_string(expr: &Expr) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_string_value` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:384:8 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn extract_string_value(expr: &Expr) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_number_value` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:392:8 [INFO] [stdout] | [INFO] [stdout] 392 | pub fn extract_number_value(expr: &Expr) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_boolean_value` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:400:8 [INFO] [stdout] | [INFO] [stdout] 400 | pub fn extract_boolean_value(expr: &Expr) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_leading_comments` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:413:8 [INFO] [stdout] | [INFO] [stdout] 413 | pub fn has_leading_comments(span: Span) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_jsdoc_comments` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:421:8 [INFO] [stdout] | [INFO] [stdout] 421 | pub fn has_jsdoc_comments(_span: Span) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `object_has_property` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:432:8 [INFO] [stdout] | [INFO] [stdout] 432 | pub fn object_has_property(obj_lit: &ObjectLit, prop_name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_object_property_value` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:445:8 [INFO] [stdout] | [INFO] [stdout] 445 | pub fn get_object_property_value<'a>(obj_lit: &'a ObjectLit, prop_name: &str) -> Option<&'a Expr> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `array_contains_string` is never used [INFO] [stdout] --> src/utils/ast_utils.rs:458:8 [INFO] [stdout] | [INFO] [stdout] 458 | pub fn array_contains_string(array_lit: &ArrayLit, value: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decorator_by_names` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn get_decorator_by_names<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decorator_by_name` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn get_decorator_by_name<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_decorator_names` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn has_decorator_names( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_decorator_name` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn has_decorator_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decorator_object_properties` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn get_decorator_object_properties(decorator: &Decorator) -> Vec<(&PropName, &Expr)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decorator_has_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:81:8 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn decorator_has_property(decorator: &Decorator, prop_name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_decorator_property_value` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn get_decorator_property_value<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TypeReferenceDescriptor` is never constructed [INFO] [stdout] --> src/utils/plugin_utils.rs:104:12 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct TypeReferenceDescriptor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:114:12 [INFO] [stdout] | [INFO] [stdout] 113 | impl TypeReferenceDescriptor { [INFO] [stdout] | ---------------------------- associated function in this implementation [INFO] [stdout] 114 | pub fn new(type_name: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `analyze_type_reference` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn analyze_type_reference(ts_type: &TsType) -> TypeReferenceDescriptor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_optional_union_type` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:215:4 [INFO] [stdout] | [INFO] [stdout] 215 | fn is_optional_union_type(union: &TsUnionType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_non_undefined_union_type` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:222:4 [INFO] [stdout] | [INFO] [stdout] 222 | fn get_non_undefined_union_type(union: &TsUnionType) -> Option<&TsType> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_promise_or_observable_type` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:229:8 [INFO] [stdout] | [INFO] [stdout] 229 | pub fn is_promise_or_observable_type(type_str: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_property_key` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:238:8 [INFO] [stdout] | [INFO] [stdout] 238 | pub fn has_property_key(obj_lit: &ObjectLit, key: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_enum_values` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:243:8 [INFO] [stdout] | [INFO] [stdout] 243 | pub fn extract_enum_values(_ts_type: &TsType) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_dynamically_added` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:251:8 [INFO] [stdout] | [INFO] [stdout] 251 | pub fn is_dynamically_added(span: Span) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_output_extension` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn get_output_extension(file_name: &str) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_path` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:272:8 [INFO] [stdout] | [INFO] [stdout] 272 | pub fn convert_path(path: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `can_reference_node` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:310:8 [INFO] [stdout] | [INFO] [stdout] 310 | pub fn can_reference_node(expr: &Expr, options: &PluginOptions) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_optional_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:337:8 [INFO] [stdout] | [INFO] [stdout] 337 | pub fn is_optional_property(_key: &PropName) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_property_base_name` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:344:8 [INFO] [stdout] | [INFO] [stdout] 344 | pub fn get_property_base_name(key: &PropName) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `insert_at` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:353:8 [INFO] [stdout] | [INFO] [stdout] 353 | pub fn insert_at(string: &str, index: usize, substring: &str) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `camel_to_snake_case` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:362:8 [INFO] [stdout] | [INFO] [stdout] 362 | pub fn camel_to_snake_case(camel_case: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `snake_to_camel_case` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:377:8 [INFO] [stdout] | [INFO] [stdout] 377 | pub fn snake_to_camel_case(snake_case: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_valid_identifier` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:396:8 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn is_valid_identifier(name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_metadata_key` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:418:8 [INFO] [stdout] | [INFO] [stdout] 418 | pub fn generate_metadata_key(class_name: &str, property_name: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_metadata_factory_call` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:423:8 [INFO] [stdout] | [INFO] [stdout] 423 | pub fn create_metadata_factory_call( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_computed_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:437:8 [INFO] [stdout] | [INFO] [stdout] 437 | pub fn create_computed_property(key: Expr, value: Expr) -> PropOrSpread { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_type_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:448:8 [INFO] [stdout] | [INFO] [stdout] 448 | pub fn create_type_property(type_name: &str) -> PropOrSpread { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_is_array_property` is never used [INFO] [stdout] --> src/utils/plugin_utils.rs:453:8 [INFO] [stdout] | [INFO] [stdout] 453 | pub fn create_is_array_property(is_array: bool) -> PropOrSpread { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_metadata_factory_call`, `create_metadata_factory_method`, `is_static_member`, `is_private_member`, and `get_member_name` are never used [INFO] [stdout] --> src/visitors/abstract_visitor.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait AbstractFileVisitor { [INFO] [stdout] | ------------------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 84 | fn create_metadata_factory_call(&self, metadata_object: Expr) -> Expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn create_metadata_factory_method(&self, metadata_object: Expr) -> ClassMember { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 138 | fn is_static_member(&self, member: &ClassMember) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | fn is_private_member(&self, member: &ClassMember) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | fn get_member_name(&self, member: &ClassMember) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DefaultAbstractVisitor` is never constructed [INFO] [stdout] --> src/visitors/abstract_visitor.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | pub struct DefaultAbstractVisitor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `type_imports` and `collected_metadata` are never read [INFO] [stdout] --> src/visitors/model_visitor.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ModelClassVisitor { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 24 | /// Tracks type imports for proper code generation [INFO] [stdout] 25 | type_imports: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | collected_metadata: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/visitors/model_visitor.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl ModelClassVisitor { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn get_type_imports(&self) -> &FxHashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn get_collected_metadata(&self) -> &FxHashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn visit_class_declaration( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn visit_property_declaration( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | fn visit_constructor_declaration( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 217 | fn create_decorator_object_literal( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | fn create_type_property_assignments( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | fn map_typescript_to_openapi_type(&self, ts_type: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | fn create_description_property_assignments( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 325 | fn create_default_property_assignment( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | fn create_enum_property_assignments( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | fn create_validation_property_assignments( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 487 | fn process_length_decorator(&self, decorator: &Decorator) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 513 | fn process_min_max_decorator(&self, decorator: &Decorator, property_name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 529 | fn process_matches_decorator(&self, decorator: &Decorator) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 545 | fn process_enum_decorator(&self, decorator: &Decorator) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 563 | fn process_is_in_decorator(&self, decorator: &Decorator) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 588 | fn create_metadata_object(&self, class_metadata: &ClassMetadata) -> Expr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 603 | fn is_class_exported(&self, _class_decl: &ClassDecl) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `type_imports` is never read [INFO] [stdout] --> src/visitors/controller_visitor.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct ControllerVisitor<'a> { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 37 | pub type_imports: FxHashMap, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `get_collected_metadata` are never used [INFO] [stdout] --> src/visitors/controller_visitor.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 43 | impl<'a> ControllerVisitor<'a> { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 44 | /// Create a new controller visitor [INFO] [stdout] 45 | pub fn new(options: &'a PluginOptions, current_file_path: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn get_collected_metadata(&self) -> &FxHashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> tests/decorator_integration_test.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | / /// Integration test for decorator access with runPluginFirst experimental flag [INFO] [stdout] 8 | | /// This test demonstrates how decorators would be accessed in a real SWC environment [INFO] [stdout] 9 | | /// with the experimental runPluginFirst flag enabled. [INFO] [stdout] | |_-----------------------------------------------------^ [INFO] [stdout] | | [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)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> tests/decorator_integration_test.rs:51:1 [INFO] [stdout] | [INFO] [stdout] 51 | /// Test class-transformer shim modes with simulated decorator access [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] --> tests/decorator_integration_test.rs:91:1 [INFO] [stdout] | [INFO] [stdout] 91 | /// Test readonly mode with decorator simulation [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] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 58.50s [INFO] running `Command { std: "docker" "inspect" "f845d86efc0cf5463f8be609a8da885c96f45ef125205871f75acf8542b9faa3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f845d86efc0cf5463f8be609a8da885c96f45ef125205871f75acf8542b9faa3", kill_on_drop: false }` [INFO] [stdout] f845d86efc0cf5463f8be609a8da885c96f45ef125205871f75acf8542b9faa3