[INFO] cloning repository https://github.com/Agustin027/seminario_rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Agustin027/seminario_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAgustin027%2Fseminario_rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAgustin027%2Fseminario_rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 941b0fbd499ed06f93d96e3a7ebb1f5f06638984 [INFO] checking Agustin027/seminario_rust against master#4847d6a9d07d4be9ba3196f6ad444af2d7bdde72 for pr-134276 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAgustin027%2Fseminario_rust" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Agustin027/seminario_rust on toolchain 4847d6a9d07d4be9ba3196f6ad444af2d7bdde72 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4847d6a9d07d4be9ba3196f6ad444af2d7bdde72" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Agustin027/seminario_rust [INFO] finished tweaking git repo https://github.com/Agustin027/seminario_rust [INFO] tweaked toml for git repo https://github.com/Agustin027/seminario_rust written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Agustin027/seminario_rust 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" "+4847d6a9d07d4be9ba3196f6ad444af2d7bdde72" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded proc-macro2 v1.0.83 [INFO] [stderr] Downloaded anstyle-query v1.0.3 [INFO] [stderr] Downloaded cargo-platform v0.1.8 [INFO] [stderr] Downloaded cargo_metadata v0.18.1 [INFO] [stderr] Downloaded clap_derive v4.5.4 [INFO] [stderr] Downloaded camino v1.1.7 [INFO] [stderr] Downloaded clap v4.5.4 [INFO] [stderr] Downloaded llvm_profparser v0.5.0 [INFO] [stderr] Downloaded cc v1.0.98 [INFO] [stderr] Downloaded toml_edit v0.22.13 [INFO] [stderr] Downloaded serde v1.0.202 [INFO] [stderr] Downloaded miniz_oxide v0.7.3 [INFO] [stderr] Downloaded syn v2.0.65 [INFO] [stderr] Downloaded quick-xml v0.31.0 [INFO] [stderr] Downloaded winnow v0.6.8 [INFO] [stderr] Downloaded cargo-tarpaulin v0.30.0 [INFO] [stderr] Downloaded git2 v0.18.3 [INFO] [stderr] Downloaded procfs-core v0.16.0 [INFO] [stderr] Downloaded object v0.26.2 [INFO] [stderr] Downloaded procfs v0.16.0 [INFO] [stderr] Downloaded nix v0.28.0 [INFO] [stderr] Downloaded ruzstd v0.6.0 [INFO] [stderr] Downloaded toml v0.8.13 [INFO] [stderr] Downloaded object v0.35.0 [INFO] [stderr] Downloaded coveralls-api v0.6.0 [INFO] [stderr] Downloaded serde_derive v1.0.202 [INFO] [stderr] Downloaded gzip-header v1.0.0 [INFO] [stderr] Downloaded unicase v2.7.0 [INFO] [stderr] Downloaded humantime-serde v1.1.1 [INFO] [stderr] Downloaded fallible-iterator v0.3.0 [INFO] [stderr] Downloaded libssh2-sys v0.3.0 [INFO] [stderr] Downloaded leb128 v0.2.5 [INFO] [stderr] Downloaded libgit2-sys v0.16.2+1.7.2 [INFO] [stderr] Downloaded libz-sys v1.1.16 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+4847d6a9d07d4be9ba3196f6ad444af2d7bdde72" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e6ff6aa2eaded26cd83d8f934b083e97c1d9b017ce5fa68189532f7be304a69e [INFO] running `Command { std: "docker" "start" "-a" "e6ff6aa2eaded26cd83d8f934b083e97c1d9b017ce5fa68189532f7be304a69e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e6ff6aa2eaded26cd83d8f934b083e97c1d9b017ce5fa68189532f7be304a69e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e6ff6aa2eaded26cd83d8f934b083e97c1d9b017ce5fa68189532f7be304a69e", kill_on_drop: false }` [INFO] [stdout] e6ff6aa2eaded26cd83d8f934b083e97c1d9b017ce5fa68189532f7be304a69e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+4847d6a9d07d4be9ba3196f6ad444af2d7bdde72" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bcca404f9f4f1d1a1529ecc0c58c26c5e48f47349499079a0bb80f21d9d20e25 [INFO] running `Command { std: "docker" "start" "-a" "bcca404f9f4f1d1a1529ecc0c58c26c5e48f47349499079a0bb80f21d9d20e25", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.83 [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Compiling pkg-config v0.3.30 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Compiling serde v1.0.202 [INFO] [stderr] Checking memchr v2.7.2 [INFO] [stderr] Checking bitflags v2.5.0 [INFO] [stderr] Checking bytes v1.6.0 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking equivalent v1.0.1 [INFO] [stderr] Compiling unicase v2.7.0 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Checking crc32fast v1.4.2 [INFO] [stderr] Checking log v0.4.21 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Checking foreign-types-shared v0.1.1 [INFO] [stderr] Compiling openssl v0.10.64 [INFO] [stderr] Checking foreign-types v0.3.2 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Checking openssl-probe v0.1.5 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Compiling httparse v1.8.0 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Checking miniz_oxide v0.7.3 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking unicode-normalization v0.1.23 [INFO] [stderr] Checking try-lock v0.2.5 [INFO] [stderr] Checking unicode-bidi v0.3.15 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking want v0.3.1 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking utf8parse v0.2.1 [INFO] [stderr] Compiling mime_guess v2.0.4 [INFO] [stderr] Checking httpdate v1.0.3 [INFO] [stderr] Checking tower-service v0.3.2 [INFO] [stderr] Compiling serde_json v1.0.117 [INFO] [stderr] Checking anstyle-parse v0.2.4 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking flate2 v1.0.30 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling jobserver v0.1.31 [INFO] [stderr] Checking indexmap v2.2.6 [INFO] [stderr] Compiling indexmap v1.8.2 [INFO] [stderr] Checking anstyle-query v1.0.3 [INFO] [stderr] Checking regex-syntax v0.8.3 [INFO] [stderr] Checking colorchoice v1.0.1 [INFO] [stderr] Checking anstyle v1.0.7 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Compiling camino v1.1.7 [INFO] [stderr] Compiling cc v1.0.98 [INFO] [stderr] Checking is_terminal_polyfill v1.70.0 [INFO] [stderr] Checking unicode-ident v1.0.12 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Checking mime v0.3.17 [INFO] [stderr] Compiling syn v2.0.65 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking regex-syntax v0.6.29 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Compiling cfg_aliases v0.1.1 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Checking rustls-pemfile v1.0.4 [INFO] [stderr] Compiling nix v0.28.0 [INFO] [stderr] Checking anstream v0.6.14 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Checking twox-hash v1.6.3 [INFO] [stderr] Checking gzip-header v1.0.0 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking encoding_rs v0.8.34 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking adler32 v1.2.0 [INFO] [stderr] Checking ipnet v2.9.0 [INFO] [stderr] Checking clap_lex v0.7.0 [INFO] [stderr] Compiling procfs v0.16.0 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Compiling llvm_profparser v0.5.0 [INFO] [stderr] Checking sync_wrapper v0.1.2 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking winnow v0.6.8 [INFO] [stderr] Checking hashbrown v0.11.2 [INFO] [stderr] Checking md5 v0.7.0 [INFO] [stderr] Checking clap_builder v4.5.2 [INFO] [stderr] Checking procfs-core v0.16.0 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking deflate v1.0.0 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Compiling cargo-tarpaulin v0.30.0 [INFO] [stderr] Checking object v0.26.2 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking leb128 v0.2.5 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking fallible-iterator v0.3.0 [INFO] [stderr] Checking regex-automata v0.1.10 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Checking regex-automata v0.4.6 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking humantime v2.1.0 [INFO] [stderr] Checking tokio v1.37.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking gimli v0.29.0 [INFO] [stderr] Compiling openssl-sys v0.9.102 [INFO] [stderr] Compiling libz-sys v1.1.16 [INFO] [stderr] Compiling libssh2-sys v0.3.0 [INFO] [stderr] Compiling libgit2-sys v0.16.2+1.7.2 [INFO] [stderr] Checking matchers v0.1.0 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking quick-xml v0.31.0 [INFO] [stderr] Checking glob v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Checking regex v1.10.4 [INFO] [stderr] Checking ruzstd v0.6.0 [INFO] [stderr] Compiling serde_derive v1.0.202 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling thiserror-impl v1.0.61 [INFO] [stderr] Compiling clap_derive v4.5.4 [INFO] [stderr] Checking object v0.35.0 [INFO] [stderr] Checking thiserror v1.0.61 [INFO] [stderr] Checking tokio-util v0.7.11 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking tracing-subscriber v0.3.18 [INFO] [stderr] Checking h2 v0.3.26 [INFO] [stderr] Checking clap v4.5.4 [INFO] [stderr] Checking git2 v0.18.3 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking hyper v0.14.28 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking serde_spanned v0.6.6 [INFO] [stderr] Checking toml_datetime v0.6.6 [INFO] [stderr] Checking cargo-platform v0.1.8 [INFO] [stderr] Checking humantime-serde v1.1.1 [INFO] [stderr] Checking toml_edit v0.22.13 [INFO] [stderr] Checking cargo_metadata v0.18.1 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking toml v0.8.13 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking coveralls-api v0.6.0 [INFO] [stderr] Checking seminario_rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `clone` [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{clone, collections::VecDeque}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `f32::consts::E` [INFO] [stdout] --> src/tp03/ej10.rs:2:33 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{collections::HashMap, f32::consts::E}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clone` [INFO] [stdout] --> src/tp03/ej8.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{clone, collections::VecDeque}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `perro` should have an upper camel case name [INFO] [stdout] --> src/tp03/ej9.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | perro, [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `Perro` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `gato` should have an upper camel case name [INFO] [stdout] --> src/tp03/ej9.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | gato, [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case: `Gato` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `caballo` should have an upper camel case name [INFO] [stdout] --> src/tp03/ej9.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | caballo, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Caballo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `otros` should have an upper camel case name [INFO] [stdout] --> src/tp03/ej9.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | otros, [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Otros` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMap` [INFO] [stdout] --> src/tp04/ej3.rs:2:29 [INFO] [stdout] | [INFO] [stdout] 2 | collections::{BTreeMap, HashMap}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::hash` [INFO] [stdout] --> src/tp04/ej5.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::hash; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMap` [INFO] [stdout] --> src/tp04/ej5.rs:3:34 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::{BTreeMap, HashMap}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `canales` should have an upper camel case name [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:519:6 [INFO] [stdout] | [INFO] [stdout] 519 | enum canales { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Canales` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clone` [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{clone, collections::VecDeque}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `f32::consts::E` [INFO] [stdout] --> src/tp03/ej10.rs:2:33 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{collections::HashMap, f32::consts::E}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clone` [INFO] [stdout] --> src/tp03/ej8.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{clone, collections::VecDeque}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `perro` should have an upper camel case name [INFO] [stdout] --> src/tp03/ej9.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | perro, [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `Perro` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `gato` should have an upper camel case name [INFO] [stdout] --> src/tp03/ej9.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | gato, [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case: `Gato` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `caballo` should have an upper camel case name [INFO] [stdout] --> src/tp03/ej9.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | caballo, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Caballo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `otros` should have an upper camel case name [INFO] [stdout] --> src/tp03/ej9.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | otros, [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Otros` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMap` [INFO] [stdout] --> src/tp04/ej3.rs:2:29 [INFO] [stdout] | [INFO] [stdout] 2 | collections::{BTreeMap, HashMap}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::hash` [INFO] [stdout] --> src/tp04/ej5.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::hash; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMap` [INFO] [stdout] --> src/tp04/ej5.rs:3:34 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::{BTreeMap, HashMap}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `canales` should have an upper camel case name [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:519:6 [INFO] [stdout] | [INFO] [stdout] 519 | enum canales { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Canales` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp04/ej3.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | let mut user = Usuario { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `user_id` [INFO] [stdout] --> src/tp04/ej3.rs:163:14 [INFO] [stdout] | [INFO] [stdout] 163 | for (user_id, user) in self.subs.iter() { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `user_id` [INFO] [stdout] --> src/tp04/ej3.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | for (user_id, user) in self.subs.iter() { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `medio` [INFO] [stdout] --> src/tp04/ej5.rs:274:9 [INFO] [stdout] | [INFO] [stdout] 274 | medio: MedioPago, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_medio` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dias_en_mes` [INFO] [stdout] --> src/tp05/fecha.rs:76:17 [INFO] [stdout] | [INFO] [stdout] 76 | let dias_en_mes = match self.mes { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dias_en_mes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dias_en_mes` [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 78 | let dias_en_mes = match self.mes { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dias_en_mes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:312:17 [INFO] [stdout] | [INFO] [stdout] 312 | let mut user = Usuario { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `user_id` [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:390:14 [INFO] [stdout] | [INFO] [stdout] 390 | for (user_id, user) in self.subs.iter() { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `user_id` [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:419:14 [INFO] [stdout] | [INFO] [stdout] 419 | for (user_id, user) in self.subs.iter() { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calcular_precio_con_impuestos` is never used [INFO] [stdout] --> src/tp02/agustin_castillo_v2.rs:16:4 [INFO] [stdout] | [INFO] [stdout] 16 | fn calcular_precio_con_impuestos(cantidades: [u32; 4], precios: [f32; 4], porcentaje: u32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calc_precio_con_impuestos_zip` is never used [INFO] [stdout] --> src/tp02/agustin_castillo_v2.rs:28:4 [INFO] [stdout] | [INFO] [stdout] 28 | fn calc_precio_con_impuestos_zip(cantidades: [u32; 4], precios: [f32; 4], porcentaje: u32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `es_par` is never used [INFO] [stdout] --> src/tp02/ej1.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn es_par(num: i32) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cantidad_de_cadenas_mayor_a` is never used [INFO] [stdout] --> src/tp02/ej10.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn cantidad_de_cadenas_mayor_a(arreglo: [String; 3], limite: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `multiplicar_valores` is never used [INFO] [stdout] --> src/tp02/ej11.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn multiplicar_valores(arr: &mut [i32; 5], factor: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `reemplazar_pares` is never used [INFO] [stdout] --> src/tp02/ej12.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn reemplazar_pares(arr: &mut [i32; 5]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ordenar_nombres` is never used [INFO] [stdout] --> src/tp02/ej13.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn ordenar_nombres(arr: &mut [&str; 3]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `incrementar` is never used [INFO] [stdout] --> src/tp02/ej14.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn incrementar(num: &mut f64) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `es_primo` is never used [INFO] [stdout] --> src/tp02/ej2.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn es_primo(numero: u32) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `suma_pares` is never used [INFO] [stdout] --> src/tp02/ej3.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn suma_pares(arreglo: [i32; 2]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cantidad_impares` is never used [INFO] [stdout] --> src/tp02/ej4.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn cantidad_impares(arreglo: [i32; 3]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `duplicar_valores` is never used [INFO] [stdout] --> src/tp02/ej5.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn duplicar_valores(arreglo: [f64; 3]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `longitud_de_cadenas` is never used [INFO] [stdout] --> src/tp02/ej6.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn longitud_de_cadenas(arreglo: [&str; 3]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cantidad_de_mayores` is never used [INFO] [stdout] --> src/tp02/ej7.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn cantidad_de_mayores(arr: [i32; 10], limite: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sumar_arreglos` is never used [INFO] [stdout] --> src/tp02/ej8.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn sumar_arreglos(arr1: [f32; 3], arr2: [f32; 3]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cantidad_en_rango` is never used [INFO] [stdout] --> src/tp02/ej9.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn cantidad_en_rango(arr: [i32; 5], inferior: i32, superior: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cancion` is never constructed [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct Cancion { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `equals` is never used [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Cancion { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 10 | pub fn equals(&self, cancion: &Cancion) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Genero` is never used [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:18:6 [INFO] [stdout] | [INFO] [stdout] 18 | enum Genero { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `genero_to_string` and `equals` are never used [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl Genero { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 26 | pub fn genero_to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn equals(&self, genero: &Genero) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Reporte` is never constructed [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | struct Reporte { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 45 | impl Reporte { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 46 | fn new(titulo: String, artista: String, pos: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Playlist` is never constructed [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:54:8 [INFO] [stdout] | [INFO] [stdout] 54 | struct Playlist { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 59 | impl Playlist { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 60 | fn agregar_cancion(&mut self, cancion: Cancion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | fn eliminar_cancion(&mut self, cancion: Cancion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | fn mover_cancion(&mut self, cancion: Cancion, j: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | fn buscar_cancion(&self, cancion: Cancion) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | fn obtener_canciones_genero(&self, genero: Genero) -> VecDeque { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | fn obtener_canciones_artista(&self, artista: String) -> VecDeque { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn modificar_titulo(&mut self, titulo: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | fn elminar_canciones(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | fn generar_reporte_por_genero(&self, genero: Genero) -> VecDeque { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Persona` is never constructed [INFO] [stdout] --> src/tp03/ej1.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct Persona { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `to_string`, `obtener_edad`, and `actualizar_direccion` are never used [INFO] [stdout] --> src/tp03/ej1.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 7 | impl Persona { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 8 | // Constructor [INFO] [stdout] 9 | fn new(nombre: String, edad: u32, direccion: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn obtener_edad(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | fn actualizar_direccion(&mut self, nueva_direccion: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Genero` is never used [INFO] [stdout] --> src/tp03/ej10.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | enum Genero { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `genero_to_string` and `equals` are never used [INFO] [stdout] --> src/tp03/ej10.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 11 | impl Genero { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 12 | fn genero_to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | fn equals(&self, genero: &Genero) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Libro` is never constructed [INFO] [stdout] --> src/tp03/ej10.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | struct Libro { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `equals` is never used [INFO] [stdout] --> src/tp03/ej10.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl Libro { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 34 | pub fn equals(&self, libro: &Libro) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cliente` is never constructed [INFO] [stdout] --> src/tp03/ej10.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | struct Cliente { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `equals` is never used [INFO] [stdout] --> src/tp03/ej10.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl Cliente { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 50 | pub fn equals(&self, cliente: &Cliente) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Prestamo` is never constructed [INFO] [stdout] --> src/tp03/ej10.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | struct Prestamo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/tp03/ej10.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 66 | impl Prestamo { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 67 | fn new(libro: Libro, cliente: Cliente, fecha_vencimiento: Fecha) -> Prestamo { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Biblioteca` is never constructed [INFO] [stdout] --> src/tp03/ej10.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | struct Biblioteca { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tp03/ej10.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 85 | impl Biblioteca { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 86 | fn obtener_cant_copias(&self, libro: &Libro) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn decrementar_copias(&mut self, libro: &Libro) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | fn incrementar_copias(&mut self, libro: &Libro) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | fn contar_prestamos_cliente(&self, cliente: &Cliente) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn realizar_prestamo( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | fn prestamos_a_vencer(&self, fecha: Fecha) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | fn prestamos_vencidos(&self, fecha: Fecha) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | fn devolver_libro(&mut self, libro: &Libro, cliente: Cliente, fecha: Fecha) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rectangulo` is never constructed [INFO] [stdout] --> src/tp03/ej2.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct Rectangulo { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `calcular_area`, `calcular_perimetro`, and `es_cuadrado` are never used [INFO] [stdout] --> src/tp03/ej2.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 6 | impl Rectangulo { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 7 | fn new(longitud: f32, ancho: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | fn calcular_area(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 15 | fn calcular_perimetro(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | fn es_cuadrado(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tp03/ej3.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Fecha { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 9 | pub fn new(dia: u32, mes: u32, año: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | pub fn es_fecha_valida(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn es_bisiesto(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn sumar_dias(&mut self, mut dias: u32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn restar_dias(&mut self, mut dias: u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn es_mayor(&self, fecha: Fecha) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn equals(&self, fecha: &Fecha) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Triangulo` is never constructed [INFO] [stdout] --> src/tp03/ej4.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct Triangulo { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `determinar_tipo`, `calcular_perimetro`, and `calcular_area` are never used [INFO] [stdout] --> src/tp03/ej4.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 6 | impl Triangulo { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 7 | fn new(lado1: f64, lado2: f64, lado3: f64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 14 | fn determinar_tipo(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn calcular_perimetro(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn calcular_area(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Producto` is never constructed [INFO] [stdout] --> src/tp03/ej5.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct Producto { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `calcular_impuestos`, `aplicar_descuento`, and `calcular_precio_total` are never used [INFO] [stdout] --> src/tp03/ej5.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 7 | impl Producto { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 8 | fn new(nombre: String, precioB: f64, id: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | fn calcular_impuestos(&self, impuesto: Option) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn aplicar_descuento(&self, descuento: Option) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn calcular_precio_total(&self, impuesto: Option, descuento: Option) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Examen` is never constructed [INFO] [stdout] --> src/tp03/ej6.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct Examen { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Estudiante` is never constructed [INFO] [stdout] --> src/tp03/ej6.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct Estudiante { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/tp03/ej6.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 12 | impl Examen { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 13 | fn new(nombre: String, nota: f64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `obtener_promedio`, `obtener_calificacion_mas_alta`, and `obtener_calificacion_mas_baja` are never used [INFO] [stdout] --> src/tp03/ej6.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl Estudiante { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 19 | fn obtener_promedio(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn obtener_calificacion_mas_alta(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn obtener_calificacion_mas_baja(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ConcesionarioAuto` is never constructed [INFO] [stdout] --> src/tp03/ej7.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct ConcesionarioAuto { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Auto` is never constructed [INFO] [stdout] --> src/tp03/ej7.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct Auto { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Color` is never used [INFO] [stdout] --> src/tp03/ej7.rs:17:6 [INFO] [stdout] | [INFO] [stdout] 17 | enum Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `color_to_string` and `equals` are never used [INFO] [stdout] --> src/tp03/ej7.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl Color { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 27 | pub fn color_to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn equals(&self, color: &Color) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `agregar_auto`, `eliminar_auto`, and `buscar_auto` are never used [INFO] [stdout] --> src/tp03/ej7.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 44 | impl ConcesionarioAuto { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 45 | fn new(nombre: String, direccion: String, cap: i32, autos: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn agregar_auto(&mut self, auto: &Auto) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | fn eliminar_auto(&mut self, auto: &Auto) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | fn buscar_auto(&self, auto: &Auto) -> Option<&Auto> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `precio_total` are never used [INFO] [stdout] --> src/tp03/ej7.rs:92:8 [INFO] [stdout] | [INFO] [stdout] 91 | impl Auto { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 92 | fn new(marca: String, modelo: String, año: u32, preciob: f64, color: Color) -> Auto { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn precio_total(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cancion` is never constructed [INFO] [stdout] --> src/tp03/ej8.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct Cancion { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `equals` is never used [INFO] [stdout] --> src/tp03/ej8.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Cancion { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 9 | pub fn equals(&self, cancion: &Cancion) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Genero` is never used [INFO] [stdout] --> src/tp03/ej8.rs:17:6 [INFO] [stdout] | [INFO] [stdout] 17 | enum Genero { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `genero_to_string` and `equals` are never used [INFO] [stdout] --> src/tp03/ej8.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl Genero { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 25 | pub fn genero_to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn equals(&self, genero: &Genero) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Playlist` is never constructed [INFO] [stdout] --> src/tp03/ej8.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | struct Playlist { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tp03/ej8.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 45 | impl Playlist { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 46 | fn agregar_cancion(&mut self, cancion: Cancion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn eliminar_cancion(&mut self, cancion: Cancion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | fn mover_cancion(&mut self, cancion: Cancion, j: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn buscar_cancion(&self, cancion: Cancion) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn obtener_canciones_genero(&self, genero: Genero) -> VecDeque { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn obtener_canciones_artista(&self, artista: String) -> VecDeque { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | fn modificar_titulo(&mut self, titulo: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | fn elminar_canciones(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Veterinaria` is never constructed [INFO] [stdout] --> src/tp03/ej9.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | struct Veterinaria { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TipoAnimal` is never used [INFO] [stdout] --> src/tp03/ej9.rs:13:6 [INFO] [stdout] | [INFO] [stdout] 13 | enum TipoAnimal { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `tipo_to_string` and `equals` are never used [INFO] [stdout] --> src/tp03/ej9.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TipoAnimal { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 20 | pub fn tipo_to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn equals(&self, tipo: &TipoAnimal) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Atencion` is never constructed [INFO] [stdout] --> src/tp03/ej9.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct Atencion { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `equals` is never used [INFO] [stdout] --> src/tp03/ej9.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl Atencion { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 40 | pub fn equals(&self, atencion: &Atencion) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mascota` is never constructed [INFO] [stdout] --> src/tp03/ej9.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | struct Mascota { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `equals` is never used [INFO] [stdout] --> src/tp03/ej9.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 55 | impl Mascota { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 56 | pub fn equals(&self, mascota: &Mascota) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Dueño` is never constructed [INFO] [stdout] --> src/tp03/ej9.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | struct Dueño { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `equals` is never used [INFO] [stdout] --> src/tp03/ej9.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 70 | impl Dueño { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 71 | pub fn equals(&self, dueño: &Dueño) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tp03/ej9.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 78 | impl Veterinaria { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 79 | fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | fn agregar_mascota(&mut self, mascota: Mascota) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | fn agregar_mascota_prioridad(&mut self, mascota: Mascota) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn atender_mascota(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn eliminar_mascota(&mut self, mascota: Mascota) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | fn registrar_atencion(&mut self, atencion: Atencion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | fn buscar_atencion( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | fn modifcar_diagnostico(&mut self, atencion: Atencion, diagnostico: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | fn modificar_fecha(&mut self, atencion: Atencion, fecha: Fecha) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | fn eliminar_atencion(&mut self, atencion: Atencion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `es_primo` is never used [INFO] [stdout] --> src/tp04/ej1.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub trait Esprimo { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] 2 | fn es_primo(&self) -> bool; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cant_primos` is never used [INFO] [stdout] --> src/tp04/ej1.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn cant_primos(vec: Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `EsMayor` is never used [INFO] [stdout] --> src/tp04/ej2.rs:1:7 [INFO] [stdout] | [INFO] [stdout] 1 | trait EsMayor { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Persona` is never constructed [INFO] [stdout] --> src/tp04/ej2.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | struct Persona<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `listado_salario_mayor` is never used [INFO] [stdout] --> src/tp04/ej2.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn listado_salario_mayor<'a>(vec: &'a Vec>, num: f64) -> Vec<&'a Persona<'a>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `persona_en_ciudad` is never used [INFO] [stdout] --> src/tp04/ej2.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn persona_en_ciudad<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `todas_en_ciudad` is never used [INFO] [stdout] --> src/tp04/ej2.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn todas_en_ciudad<'a>(vec: &'a Vec>, ciudad: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `almenos_uno_en_ciudad` is never used [INFO] [stdout] --> src/tp04/ej2.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn almenos_uno_en_ciudad<'a>(vec: &'a Vec>, ciudad: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `existe` is never used [INFO] [stdout] --> src/tp04/ej2.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn existe<'a>(vec: &'a Vec>, p: Persona) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `edades` is never used [INFO] [stdout] --> src/tp04/ej2.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | fn edades(personas: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `retornar_max_y_min_salario` is never used [INFO] [stdout] --> src/tp04/ej2.rs:58:4 [INFO] [stdout] | [INFO] [stdout] 58 | fn retornar_max_y_min_salario<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StreamingRust` is never constructed [INFO] [stdout] --> src/tp04/ej3.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct StreamingRust { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Usuario` is never constructed [INFO] [stdout] --> src/tp04/ej3.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Usuario { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Suscripcion` is never constructed [INFO] [stdout] --> src/tp04/ej3.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Suscripcion { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mp` is never constructed [INFO] [stdout] --> src/tp04/ej3.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Mp { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Tarjeta` is never constructed [INFO] [stdout] --> src/tp04/ej3.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | struct Tarjeta { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Transferencia` is never constructed [INFO] [stdout] --> src/tp04/ej3.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | struct Transferencia { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cripto` is never constructed [INFO] [stdout] --> src/tp04/ej3.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 39 | struct Cripto { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MedioPago` is never used [INFO] [stdout] --> src/tp04/ej3.rs:45:6 [INFO] [stdout] | [INFO] [stdout] 45 | enum MedioPago { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TipoSuscripcion` is never used [INFO] [stdout] --> src/tp04/ej3.rs:53:6 [INFO] [stdout] | [INFO] [stdout] 53 | enum TipoSuscripcion { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `precio` and `duracion` are never used [INFO] [stdout] --> src/tp04/ej3.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 59 | impl TipoSuscripcion { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 60 | fn precio(&self) -> f64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn duracion(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tp04/ej3.rs:77:8 [INFO] [stdout] | [INFO] [stdout] 76 | impl StreamingRust { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 77 | fn new() -> StreamingRust { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | fn crear_usuario(&mut self, id: i32, mediopago: MedioPago, tipo: TipoSuscripcion) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn upgrade_subscripcion(&mut self, user: Usuario) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | fn downgrade_subscripcion(&mut self, user: Usuario) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | fn cancelar_subscripcion(&mut self, user: Usuario) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | fn medio_de_pago_mas_usado_subs_activas(&self) -> MedioPago { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | fn subscripcion_mas_contratada_subs_activas(&self) -> TipoSuscripcion { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | fn medio_de_pago_mas_usado(&self) -> MedioPago { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 205 | fn subscripcion_mas_contratada(&self) -> TipoSuscripcion { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ContadorVec` is never used [INFO] [stdout] --> src/tp04/ej3.rs:218:7 [INFO] [stdout] | [INFO] [stdout] 218 | trait ContadorVec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Categoria` is never used [INFO] [stdout] --> src/tp04/ej4.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | enum Categoria { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Producto` is never constructed [INFO] [stdout] --> src/tp04/ej4.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Producto { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `aplicar_desc` are never used [INFO] [stdout] --> src/tp04/ej4.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl Producto { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 19 | fn new(nombre: String, categoria: Categoria, precio: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn aplicar_desc(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cliente` is never constructed [INFO] [stdout] --> src/tp04/ej4.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 39 | struct Cliente { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Vendedor` is never constructed [INFO] [stdout] --> src/tp04/ej4.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 47 | struct Vendedor { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/tp04/ej4.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 52 | impl Vendedor { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 53 | fn new(legajo: String, antiguedad: i32, salario: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MedioPago` is never used [INFO] [stdout] --> src/tp04/ej4.rs:63:6 [INFO] [stdout] | [INFO] [stdout] 63 | enum MedioPago { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SisteamaVentas` is never constructed [INFO] [stdout] --> src/tp04/ej4.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | struct SisteamaVentas { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `crear_venta`, `control_ventas_categ`, and `control_ventas_vendedor` are never used [INFO] [stdout] --> src/tp04/ej4.rs:75:8 [INFO] [stdout] | [INFO] [stdout] 74 | impl SisteamaVentas { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 75 | fn new(vec: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn crear_venta( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | fn control_ventas_categ(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn control_ventas_vendedor(&self) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Venta` is never constructed [INFO] [stdout] --> src/tp04/ej4.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 117 | struct Venta { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `crear_venta` and `calcular_precio_final` are never used [INFO] [stdout] --> src/tp04/ej4.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 125 | impl Venta { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 126 | fn crear_venta( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | fn calcular_precio_final(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Usuario` is never constructed [INFO] [stdout] --> src/tp04/ej5.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | struct Usuario { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `IniciarBalance` is never used [INFO] [stdout] --> src/tp04/ej5.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | trait IniciarBalance { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tp04/ej5.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 28 | impl Usuario { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 29 | fn new(nombre: String, apellido: String, email: String, dni: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn kyc(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn validar_usuario_compra(self, fiat: f32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn validar_usuario_venta(self, monto: f32, cripto: Criptomoneda) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | fn validar_usuario_retiro_fiat(self, monto: f32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn ingresar_dinero(&mut self, ingreso: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | fn aumentar_balance_crypto(&mut self, cripto: Criptomoneda, monto: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Criptomoneda` is never constructed [INFO] [stdout] --> src/tp04/ej5.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | struct Criptomoneda { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `cotizacion`, and `verificar_blockchain` are never used [INFO] [stdout] --> src/tp04/ej5.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 87 | impl Criptomoneda { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 88 | fn new(nombre: String, prefijo: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn cotizacion(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn verificar_blockchain(&self, blockchain: Blockchain) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Blockchain` is never constructed [INFO] [stdout] --> src/tp04/ej5.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 111 | struct Blockchain { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `generar_hash` are never used [INFO] [stdout] --> src/tp04/ej5.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 115 | impl Blockchain { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 116 | fn new(nombre: String, prefijo: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | fn generar_hash(&self) -> Hash { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Hash` is never constructed [INFO] [stdout] --> src/tp04/ej5.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | struct Hash { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/tp04/ej5.rs:132:8 [INFO] [stdout] | [INFO] [stdout] 131 | impl Hash { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 132 | fn new(nombre_blockchain: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Transaccion` is never constructed [INFO] [stdout] --> src/tp04/ej5.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | struct Transaccion { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `transaccion_ingreso`, `transaccion_compra`, `transaccion_venta`, `transaccion_retiro`, `transaccion_recibir`, and `transaccion_retirar_fiat` are never used [INFO] [stdout] --> src/tp04/ej5.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 152 | impl Transaccion { [INFO] [stdout] | ---------------- associated functions in this implementation [INFO] [stdout] 153 | fn transaccion_ingreso(fecha: String, tipo: String, monto: f64, user: Usuario) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | fn transaccion_compra( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | fn transaccion_venta( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | fn transaccion_retiro( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 245 | fn transaccion_recibir( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | fn transaccion_retirar_fiat( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MedioPago` is never used [INFO] [stdout] --> src/tp04/ej5.rs:294:6 [INFO] [stdout] | [INFO] [stdout] 294 | enum MedioPago { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `XYZ` is never constructed [INFO] [stdout] --> src/tp04/ej5.rs:298:8 [INFO] [stdout] | [INFO] [stdout] 298 | struct XYZ { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tp04/ej5.rs:304:8 [INFO] [stdout] | [INFO] [stdout] 303 | impl XYZ { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 304 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | fn ingresar_dinero(&mut self, user: Usuario, ingreso: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | fn comprar_cripto(&mut self, user: Usuario, fiat: f32, cripto: Criptomoneda) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | fn vender_cripto(&mut self, user: Usuario, monto: f32, cripto: Criptomoneda) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 369 | fn retirar_cripto( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 400 | fn recibir_cripto( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 429 | fn retirar_fiat(&mut self, monto: f32, user: Usuario) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 445 | fn cripto_mas_vendida(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 474 | fn cripto_mas_comprada(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 503 | fn cripto_mas_volumen_venta(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 527 | fn cripto_mas_volumen_compra(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 552 | fn pushear_transaccion(&mut self, t: Transaccion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tp04/fecha.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Fecha { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 9 | pub fn new(dia: u32, mes: u32, año: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | pub fn es_fecha_valida(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn es_bisiesto(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn sumar_dias(&mut self, mut dias: u32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn restar_dias(&mut self, mut dias: u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn es_mayor(&self, fecha: Fecha) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn equals(&self, fecha: &Fecha) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `es_bisiesto`, `es_fecha_valida`, `sumar_dias`, `restar_dias`, and `es_mayor` are never used [INFO] [stdout] --> src/tp05/fecha.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Fecha { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 10 | pub fn new(dia: u32, mes: u32, año: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 14 | pub fn es_bisiesto(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn es_fecha_valida(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn sumar_dias(&mut self, mut dias: u32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn restar_dias(&mut self, mut dias: u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn es_mayor(&self, fecha: &Fecha) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `es_bisiesto`, `es_fecha_valida`, `sumar_dias`, `restar_dias`, and `es_mayor` are never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Fecha { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 12 | pub fn new(dia: u32, mes: u32, año: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn es_bisiesto(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn es_fecha_valida(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn sumar_dias(&mut self, mut dias: u32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn restar_dias(&mut self, mut dias: u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn es_mayor(&self, fecha: &Fecha) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StreamingRust` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:219:8 [INFO] [stdout] | [INFO] [stdout] 219 | struct StreamingRust { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Usuario` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:223:8 [INFO] [stdout] | [INFO] [stdout] 223 | struct Usuario { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Suscripcion` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:229:8 [INFO] [stdout] | [INFO] [stdout] 229 | struct Suscripcion { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:235:8 [INFO] [stdout] | [INFO] [stdout] 234 | impl Suscripcion { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 235 | fn new(tipo: TipoSuscripcion, fecha_inicio: Fecha) -> Suscripcion { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mp` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:244:8 [INFO] [stdout] | [INFO] [stdout] 244 | struct Mp { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Tarjeta` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:249:8 [INFO] [stdout] | [INFO] [stdout] 249 | struct Tarjeta { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Transferencia` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 255 | struct Transferencia { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cripto` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:260:8 [INFO] [stdout] | [INFO] [stdout] 260 | struct Cripto { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MedioPago` is never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:266:6 [INFO] [stdout] | [INFO] [stdout] 266 | enum MedioPago { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TipoSuscripcion` is never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:274:6 [INFO] [stdout] | [INFO] [stdout] 274 | enum TipoSuscripcion { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `precio` and `duracion` are never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:281:8 [INFO] [stdout] | [INFO] [stdout] 280 | impl TipoSuscripcion { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 281 | fn precio(&self) -> f64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | fn duracion(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:298:8 [INFO] [stdout] | [INFO] [stdout] 297 | impl StreamingRust { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 298 | fn new() -> StreamingRust { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | fn crear_usuario( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 330 | fn upgrade_subscripcion(&mut self, user: Usuario) -> Result<(), StreamingError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | fn downgrade_subscripcion(&mut self, user: Usuario) -> Result<(), StreamingError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 374 | fn cancelar_subscripcion(&mut self, user: Usuario) -> Result<(), StreamingError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 388 | fn medio_de_pago_mas_usado_subs_activas(&self) -> MedioPago { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 403 | fn subscripcion_mas_contratada_subs_activas(&self) -> TipoSuscripcion { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 417 | fn medio_de_pago_mas_usado(&self) -> MedioPago { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 431 | fn subscripcion_mas_contratada(&self) -> TipoSuscripcion { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 442 | fn contratar_paquete_exclusivo( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ContadorVec` is never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:461:7 [INFO] [stdout] | [INFO] [stdout] 461 | trait ContadorVec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `canales` is never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:519:6 [INFO] [stdout] | [INFO] [stdout] 519 | enum canales { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PeliculasySeries` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:526:8 [INFO] [stdout] | [INFO] [stdout] 526 | struct PeliculasySeries { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PerfilUsuario` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:533:8 [INFO] [stdout] | [INFO] [stdout] 533 | struct PerfilUsuario { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:538:8 [INFO] [stdout] | [INFO] [stdout] 537 | impl PerfilUsuario { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 538 | fn new(nombre: String, es_mayor: bool) -> PerfilUsuario { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TipoPaquete` is never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:544:6 [INFO] [stdout] | [INFO] [stdout] 544 | enum TipoPaquete { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_pack_futbol`, `new_pack_estrenos`, `new_pack_familiar`, `agregar_nuevo_perfil`, and `precio` are never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:551:8 [INFO] [stdout] | [INFO] [stdout] 550 | impl TipoPaquete { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 551 | fn new_pack_futbol() -> TipoPaquete { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 554 | fn new_pack_estrenos() -> TipoPaquete { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 576 | fn new_pack_familiar() -> TipoPaquete { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 585 | fn agregar_nuevo_perfil( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 604 | fn precio(&self) -> f64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Paquete` is never constructed [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:613:8 [INFO] [stdout] | [INFO] [stdout] 613 | struct Paquete { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:619:8 [INFO] [stdout] | [INFO] [stdout] 618 | impl Paquete { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 619 | fn new(tipo: TipoPaquete, medio_de_pago: MedioPago) -> Paquete { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `StreamingError` is never used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:630:6 [INFO] [stdout] | [INFO] [stdout] 630 | enum StreamingError { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `precioB` should have a snake case name [INFO] [stdout] --> src/tp03/ej5.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | precioB: f64, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `precio_b` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `precioB` should have a snake case name [INFO] [stdout] --> src/tp03/ej5.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | fn new(nombre: String, precioB: f64, id: u32) -> Self { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `precio_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reporte` is never read [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:338:13 [INFO] [stdout] | [INFO] [stdout] 338 | let mut reporte: VecDeque = VecDeque::new(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reporte` is never read [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:402:13 [INFO] [stdout] | [INFO] [stdout] 402 | let mut reporte: VecDeque = VecDeque::new(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp03/ej10.rs:386:9 [INFO] [stdout] | [INFO] [stdout] 386 | let mut libro = Libro { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp03/ej10.rs:393:9 [INFO] [stdout] | [INFO] [stdout] 393 | let mut libro2 = Libro { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp03/ej10.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 401 | let mut libro3 = Libro { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp04/ej3.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | let mut user = Usuario { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `user_id` [INFO] [stdout] --> src/tp04/ej3.rs:163:14 [INFO] [stdout] | [INFO] [stdout] 163 | for (user_id, user) in self.subs.iter() { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `user_id` [INFO] [stdout] --> src/tp04/ej3.rs:193:14 [INFO] [stdout] | [INFO] [stdout] 193 | for (user_id, user) in self.subs.iter() { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp04/ej4.rs:284:9 [INFO] [stdout] | [INFO] [stdout] 284 | let mut sistema_ventas = SisteamaVentas::new(vec![venta1, venta2, venta3]); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp04/ej4.rs:342:9 [INFO] [stdout] | [INFO] [stdout] 342 | let mut sistema_ventas = SisteamaVentas::new(vec![venta1, venta2, venta3]); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `medio` [INFO] [stdout] --> src/tp04/ej5.rs:274:9 [INFO] [stdout] | [INFO] [stdout] 274 | medio: MedioPago, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_medio` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp04/ej5.rs:580:9 [INFO] [stdout] | [INFO] [stdout] 580 | let mut usuario = Usuario::new( [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dias_en_mes` [INFO] [stdout] --> src/tp05/fecha.rs:76:17 [INFO] [stdout] | [INFO] [stdout] 76 | let dias_en_mes = match self.mes { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dias_en_mes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dias_en_mes` [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 78 | let dias_en_mes = match self.mes { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dias_en_mes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:312:17 [INFO] [stdout] | [INFO] [stdout] 312 | let mut user = Usuario { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `user_id` [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:390:14 [INFO] [stdout] | [INFO] [stdout] 390 | for (user_id, user) in self.subs.iter() { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `user_id` [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:419:14 [INFO] [stdout] | [INFO] [stdout] 419 | for (user_id, user) in self.subs.iter() { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:682:9 [INFO] [stdout] | [INFO] [stdout] 682 | let mut sub = Suscripcion::new(TipoSuscripcion::Basic, Fecha::new(1, 1, 2024)); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Rap` and `Otros` are never constructed [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 18 | enum Genero { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 21 | Rap, [INFO] [stdout] | ^^^ [INFO] [stdout] 22 | Jazz, [INFO] [stdout] 23 | Otros, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Genero` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/tp03/agustin_castillo_e2_v2.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 45 | impl Reporte { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 46 | fn new(titulo: String, artista: String, pos: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Otros` is never constructed [INFO] [stdout] --> src/tp03/ej10.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 5 | enum Genero { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 9 | Otros, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Genero` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nombre` and `direccion` are never read [INFO] [stdout] --> src/tp03/ej10.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 78 | struct Biblioteca { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 79 | nombre: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 80 | direccion: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nombre` and `id` are never read [INFO] [stdout] --> src/tp03/ej6.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 6 | struct Estudiante { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 7 | nombre: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | id: u32, [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nombre` and `direccion` are never read [INFO] [stdout] --> src/tp03/ej7.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 1 | struct ConcesionarioAuto { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 2 | nombre: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 3 | direccion: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Azul`, `Amarillo`, `Blanco`, and `Otro` are never constructed [INFO] [stdout] --> src/tp03/ej7.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 17 | enum Color { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 20 | Azul, [INFO] [stdout] | ^^^^ [INFO] [stdout] 21 | Amarillo, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 22 | Blanco, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 23 | Negro, [INFO] [stdout] 24 | Otro, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Color` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Rap`, `Jazz`, and `Otros` are never constructed [INFO] [stdout] --> src/tp03/ej8.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 17 | enum Genero { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 20 | Rap, [INFO] [stdout] | ^^^ [INFO] [stdout] 21 | Jazz, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | Otros, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Genero` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `caballo` and `otros` are never constructed [INFO] [stdout] --> src/tp03/ej9.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 13 | enum TipoAnimal { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 16 | caballo, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 17 | otros, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TipoAnimal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `subscripcion_mas_contratada_subs_activas` is never used [INFO] [stdout] --> src/tp04/ej3.rs:177:8 [INFO] [stdout] | [INFO] [stdout] 76 | impl StreamingRust { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 177 | fn subscripcion_mas_contratada_subs_activas(&self) -> TipoSuscripcion { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Transferencia` is never constructed [INFO] [stdout] --> src/tp04/ej4.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 63 | enum MedioPago { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 67 | Transferencia, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MedioPago` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `crear_venta` is never used [INFO] [stdout] --> src/tp04/ej4.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 74 | impl SisteamaVentas { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | fn crear_venta( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `TransfenciaBancaria` is never constructed [INFO] [stdout] --> src/tp04/ej5.rs:296:5 [INFO] [stdout] | [INFO] [stdout] 294 | enum MedioPago { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] 295 | MercadoPago, [INFO] [stdout] 296 | TransfenciaBancaria, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `equals` is never used [INFO] [stdout] --> src/tp04/fecha.rs:184:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Fecha { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn equals(&self, fecha: &Fecha) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `precioB` should have a snake case name [INFO] [stdout] --> src/tp03/ej5.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | precioB: f64, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `precio_b` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `precioB` should have a snake case name [INFO] [stdout] --> src/tp03/ej5.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | fn new(nombre: String, precioB: f64, id: u32) -> Self { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `precio_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:688:5 [INFO] [stdout] | [INFO] [stdout] 688 | / streaming.crear_usuario( [INFO] [stdout] 689 | | 1, [INFO] [stdout] 690 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 691 | | TipoSuscripcion::Basic, [INFO] [stdout] 692 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 688 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:701:5 [INFO] [stdout] | [INFO] [stdout] 701 | streaming.upgrade_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 701 | let _ = streaming.upgrade_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:704:5 [INFO] [stdout] | [INFO] [stdout] 704 | streaming.upgrade_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 704 | let _ = streaming.upgrade_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:707:5 [INFO] [stdout] | [INFO] [stdout] 707 | streaming.upgrade_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 707 | let _ = streaming.upgrade_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:714:5 [INFO] [stdout] | [INFO] [stdout] 714 | streaming.downgrade_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 714 | let _ = streaming.downgrade_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:716:5 [INFO] [stdout] | [INFO] [stdout] 716 | streaming.downgrade_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 716 | let _ = streaming.downgrade_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:719:5 [INFO] [stdout] | [INFO] [stdout] 719 | streaming.downgrade_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 719 | let _ = streaming.downgrade_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:722:5 [INFO] [stdout] | [INFO] [stdout] 722 | streaming.downgrade_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 722 | let _ = streaming.downgrade_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:726:5 [INFO] [stdout] | [INFO] [stdout] 726 | streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 726 | let _ = streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Transferencia` should have a snake case name [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:736:9 [INFO] [stdout] | [INFO] [stdout] 736 | let Transferencia = Transferencia { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `transferencia` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Cripto` should have a snake case name [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:740:9 [INFO] [stdout] | [INFO] [stdout] 740 | let Cripto = Cripto { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `cripto` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:767:5 [INFO] [stdout] | [INFO] [stdout] 767 | / streaming.crear_usuario( [INFO] [stdout] 768 | | 1, [INFO] [stdout] 769 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 770 | | TipoSuscripcion::Basic, [INFO] [stdout] 771 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 767 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:772:5 [INFO] [stdout] | [INFO] [stdout] 772 | streaming.crear_usuario(2, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 772 | let _ = streaming.crear_usuario(2, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:773:5 [INFO] [stdout] | [INFO] [stdout] 773 | / streaming.crear_usuario( [INFO] [stdout] 774 | | 3, [INFO] [stdout] 775 | | MedioPago::MercadoPago(mercado_pago), [INFO] [stdout] 776 | | TipoSuscripcion::Basic, [INFO] [stdout] 777 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 773 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:779:5 [INFO] [stdout] | [INFO] [stdout] 779 | / streaming.crear_usuario( [INFO] [stdout] 780 | | 4, [INFO] [stdout] 781 | | MedioPago::Transferencia(Transferencia.clone()), [INFO] [stdout] 782 | | TipoSuscripcion::Basic, [INFO] [stdout] 783 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 779 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:786:5 [INFO] [stdout] | [INFO] [stdout] 786 | streaming.crear_usuario(5, MedioPago::Cripto(Cripto.clone()), TipoSuscripcion::Basic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 786 | let _ = streaming.crear_usuario(5, MedioPago::Cripto(Cripto.clone()), TipoSuscripcion::Basic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:787:5 [INFO] [stdout] | [INFO] [stdout] 787 | streaming.crear_usuario(7, MedioPago::Cripto(Cripto.clone()), TipoSuscripcion::Basic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 787 | let _ = streaming.crear_usuario(7, MedioPago::Cripto(Cripto.clone()), TipoSuscripcion::Basic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:788:5 [INFO] [stdout] | [INFO] [stdout] 788 | streaming.crear_usuario(8, MedioPago::Cripto(Cripto.clone()), TipoSuscripcion::Basic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 788 | let _ = streaming.crear_usuario(8, MedioPago::Cripto(Cripto.clone()), TipoSuscripcion::Basic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:789:5 [INFO] [stdout] | [INFO] [stdout] 789 | streaming.crear_usuario(9, MedioPago::Cripto(Cripto.clone()), TipoSuscripcion::Basic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 789 | let _ = streaming.crear_usuario(9, MedioPago::Cripto(Cripto.clone()), TipoSuscripcion::Basic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:792:5 [INFO] [stdout] | [INFO] [stdout] 792 | streaming.crear_usuario(10, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 792 | let _ = streaming.crear_usuario(10, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:793:5 [INFO] [stdout] | [INFO] [stdout] 793 | streaming.crear_usuario(11, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 793 | let _ = streaming.crear_usuario(11, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:794:5 [INFO] [stdout] | [INFO] [stdout] 794 | streaming.crear_usuario(12, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 794 | let _ = streaming.crear_usuario(12, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:795:5 [INFO] [stdout] | [INFO] [stdout] 795 | streaming.crear_usuario(13, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 795 | let _ = streaming.crear_usuario(13, efectivo.clone(), TipoSuscripcion::Basic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:797:5 [INFO] [stdout] | [INFO] [stdout] 797 | streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 797 | let _ = streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:799:5 [INFO] [stdout] | [INFO] [stdout] 799 | streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 799 | let _ = streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:801:5 [INFO] [stdout] | [INFO] [stdout] 801 | streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 801 | let _ = streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:803:5 [INFO] [stdout] | [INFO] [stdout] 803 | streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 803 | let _ = streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:868:5 [INFO] [stdout] | [INFO] [stdout] 868 | / streaming.crear_usuario( [INFO] [stdout] 869 | | 1, [INFO] [stdout] 870 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 871 | | TipoSuscripcion::Basic, [INFO] [stdout] 872 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 868 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:873:5 [INFO] [stdout] | [INFO] [stdout] 873 | / streaming.crear_usuario( [INFO] [stdout] 874 | | 2, [INFO] [stdout] 875 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 876 | | TipoSuscripcion::Basic, [INFO] [stdout] 877 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 873 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:878:5 [INFO] [stdout] | [INFO] [stdout] 878 | / streaming.crear_usuario( [INFO] [stdout] 879 | | 3, [INFO] [stdout] 880 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 881 | | TipoSuscripcion::Basic, [INFO] [stdout] 882 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 878 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:884:5 [INFO] [stdout] | [INFO] [stdout] 884 | / streaming.crear_usuario( [INFO] [stdout] 885 | | 4, [INFO] [stdout] 886 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 887 | | TipoSuscripcion::Clasic, [INFO] [stdout] 888 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 884 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:889:5 [INFO] [stdout] | [INFO] [stdout] 889 | / streaming.crear_usuario( [INFO] [stdout] 890 | | 5, [INFO] [stdout] 891 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 892 | | TipoSuscripcion::Clasic, [INFO] [stdout] 893 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 889 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:895:5 [INFO] [stdout] | [INFO] [stdout] 895 | / streaming.crear_usuario( [INFO] [stdout] 896 | | 6, [INFO] [stdout] 897 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 898 | | TipoSuscripcion::Super, [INFO] [stdout] 899 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 895 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:900:5 [INFO] [stdout] | [INFO] [stdout] 900 | / streaming.crear_usuario( [INFO] [stdout] 901 | | 7, [INFO] [stdout] 902 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 903 | | TipoSuscripcion::Super, [INFO] [stdout] 904 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 900 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:905:5 [INFO] [stdout] | [INFO] [stdout] 905 | / streaming.crear_usuario( [INFO] [stdout] 906 | | 8, [INFO] [stdout] 907 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 908 | | TipoSuscripcion::Super, [INFO] [stdout] 909 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 905 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:917:5 [INFO] [stdout] | [INFO] [stdout] 917 | streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 917 | let _ = streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:919:5 [INFO] [stdout] | [INFO] [stdout] 919 | streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 919 | let _ = streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:921:5 [INFO] [stdout] | [INFO] [stdout] 921 | streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 921 | let _ = streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:922:5 [INFO] [stdout] | [INFO] [stdout] 922 | / streaming.crear_usuario( [INFO] [stdout] 923 | | 9, [INFO] [stdout] 924 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 925 | | TipoSuscripcion::Basic, [INFO] [stdout] 926 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 922 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:957:5 [INFO] [stdout] | [INFO] [stdout] 957 | pack_familiar.agregar_nuevo_perfil("Agustin".to_string(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 957 | let _ = pack_familiar.agregar_nuevo_perfil("Agustin".to_string(), true); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:958:5 [INFO] [stdout] | [INFO] [stdout] 958 | pack_familiar.agregar_nuevo_perfil("Tomas".to_string(), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 958 | let _ = pack_familiar.agregar_nuevo_perfil("Tomas".to_string(), false); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:959:5 [INFO] [stdout] | [INFO] [stdout] 959 | pack_familiar.agregar_nuevo_perfil("Fer".to_string(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 959 | let _ = pack_familiar.agregar_nuevo_perfil("Fer".to_string(), true); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:960:5 [INFO] [stdout] | [INFO] [stdout] 960 | pack_familiar.agregar_nuevo_perfil("Mile".to_string(), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 960 | let _ = pack_familiar.agregar_nuevo_perfil("Mile".to_string(), false); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:961:5 [INFO] [stdout] | [INFO] [stdout] 961 | pack_familiar.agregar_nuevo_perfil("Carpincho".to_string(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 961 | let _ = pack_familiar.agregar_nuevo_perfil("Carpincho".to_string(), true); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:1001:5 [INFO] [stdout] | [INFO] [stdout] 1001 | / streaming.crear_usuario( [INFO] [stdout] 1002 | | 1, [INFO] [stdout] 1003 | | MedioPago::Tarjeta(tarjeta.clone()), [INFO] [stdout] 1004 | | TipoSuscripcion::Basic, [INFO] [stdout] 1005 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1001 | let _ = streaming.crear_usuario( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:1008:5 [INFO] [stdout] | [INFO] [stdout] 1008 | streaming.contratar_paquete_exclusivo(1, TipoPaquete::new_pack_futbol()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1008 | let _ = streaming.contratar_paquete_exclusivo(1, TipoPaquete::new_pack_futbol()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tp05/agustin_castillo_e3_v2.rs:1016:5 [INFO] [stdout] | [INFO] [stdout] 1016 | streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1016 | let _ = streaming.cancelar_subscripcion(user.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 13s [INFO] running `Command { std: "docker" "inspect" "bcca404f9f4f1d1a1529ecc0c58c26c5e48f47349499079a0bb80f21d9d20e25", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bcca404f9f4f1d1a1529ecc0c58c26c5e48f47349499079a0bb80f21d9d20e25", kill_on_drop: false }` [INFO] [stdout] bcca404f9f4f1d1a1529ecc0c58c26c5e48f47349499079a0bb80f21d9d20e25