Borderou de evaluare (job #2640575)

Utilizator TincaMateiTinca Matei TincaMatei Data 6 august 2020 22:14:11
Problema Secv8 Status done
Runda Arhiva de probleme Compilator rs | Vezi sursa
Scor 0

Raport evaluator

Eroare de compilare: error[E0382]: use of partially moved value: `a` --> main.rs:92:7 | 92 | a.right = Treap::join(a.right, Some(b)); | ^^^^^^^^^^^^^^^^^^^^^^-------^^^^^^^^^^ | | | | | value moved here | value used here after move | = note: move occurs because `a.right` has type `std::option::Option<std::boxed::Box<Treap>>`, which does not implement the `Copy` trait error[E0382]: use of partially moved value: `b` --> main.rs:96:7 | 96 | b.left = Treap::join(Some(a), b.left); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------^ | | | | | value moved here | value used here after move | = note: move occurs because `b.left` has type `std::option::Option<std::boxed::Box<Treap>>`, which does not implement the `Copy` trait error[E0382]: use of moved value: `t` --> main.rs:162:23 | 161 | collection = Treap::collect(t.left, collection); | ------ value moved here 162 | collection.push(t.key); | ^^^^^ value used here after move | = note: move occurs because `t.left` has type `std::option::Option<std::boxed::Box<Treap>>`, which does not implement the `Copy` trait error[E0382]: use of moved value: `t` --> main.rs:163:35 | 161 | collection = Treap::collect(t.left, collection); | ------ value moved here 162 | collection.push(t.key); 163 | collection = Treap::collect(t.right, collection); | ^^^^^^^ value used here after move | = note: move occurs because `t.left` has type `std::option::Option<std::boxed::Box<Treap>>`, which does not implement the `Copy` trait error: aborting due to 4 previous errors For more information about this error, try `rustc --explain E0382`. Non zero exit status: 1

Ceva nu functioneaza?