File: index-mut-help.stderr

package info (click to toggle)
rustc 1.85.0%2Bdfsg3-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental, sid, trixie
  • size: 893,396 kB
  • sloc: xml: 158,127; python: 35,830; javascript: 19,497; cpp: 19,002; sh: 17,245; ansic: 13,127; asm: 4,376; makefile: 1,051; perl: 29; lisp: 29; ruby: 19; sql: 11
file content (41 lines) | stat: -rw-r--r-- 1,966 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
error[E0596]: cannot borrow data in an index of `HashMap<&str, String>` as mutable
  --> $DIR/index-mut-help.rs:10:5
   |
LL |     map["peter"].clear();
   |     ^^^^^^^^^^^^ cannot borrow as mutable
   |
   = help: trait `IndexMut` is required to modify indexed content, but it is not implemented for `HashMap<&str, String>`
help: to modify a `HashMap<&str, String>` use `.get_mut()`
   |
LL |     if let Some(val) = map.get_mut("peter") { val.clear(); };
   |     ++++++++++++++++++    ~~~~~~~~~       ~~~~~~~        +++

error[E0594]: cannot assign to data in an index of `HashMap<&str, String>`
  --> $DIR/index-mut-help.rs:11:5
   |
LL |     map["peter"] = "0".to_string();
   |     ^^^^^^^^^^^^ cannot assign
   |
   = help: trait `IndexMut` is required to modify indexed content, but it is not implemented for `HashMap<&str, String>`
help: use `.insert()` to insert a value into a `HashMap<&str, String>`, `.get_mut()` to modify it, or the entry API for more flexibility
   |
LL |     map.insert("peter", "0".to_string());
   |        ~~~~~~~~       ~                +
LL |     if let Some(val) = map.get_mut("peter") { *val = "0".to_string(); };
   |     ++++++++++++++++++    ~~~~~~~~~       ~~~~~~~~                  +++
LL |     let val = map.entry("peter").or_insert("0".to_string());
   |     +++++++++    ~~~~~~~       ~~~~~~~~~~~~               +

error[E0596]: cannot borrow data in an index of `HashMap<&str, String>` as mutable
  --> $DIR/index-mut-help.rs:12:13
   |
LL |     let _ = &mut map["peter"];
   |             ^^^^^^^^^^^^^^^^^ cannot borrow as mutable
   |
   = help: trait `IndexMut` is required to modify indexed content, but it is not implemented for `HashMap<&str, String>`
   = help: to modify a `HashMap<&str, String>`, use `.get_mut()`, `.insert()` or the entry API

error: aborting due to 3 previous errors

Some errors have detailed explanations: E0594, E0596.
For more information about an error, try `rustc --explain E0594`.