Clean up E0310 explanation
This commit is contained in:
parent
dbef35309d
commit
73283f1b32
@ -1,7 +1,7 @@
|
||||
Types in type definitions have lifetimes associated with them that represent
|
||||
how long the data stored within them is guaranteed to be live. This lifetime
|
||||
must be as long as the data needs to be alive, and missing the constraint that
|
||||
denotes this will cause this error.
|
||||
A parameter type is missing a lifetime constraint or has a lifetime that
|
||||
does not live long enough.
|
||||
|
||||
Erroneous code example:
|
||||
|
||||
```compile_fail,E0310
|
||||
// This won't compile because T is not constrained to the static lifetime
|
||||
@ -11,6 +11,11 @@ struct Foo<T> {
|
||||
}
|
||||
```
|
||||
|
||||
Type parameters in type definitions have lifetimes associated with them that
|
||||
represent how long the data stored within them is guaranteed to live. This
|
||||
lifetime must be as long as the data needs to be alive, and missing the
|
||||
constraint that denotes this will cause this error.
|
||||
|
||||
This will compile, because it has the constraint on the type parameter:
|
||||
|
||||
```
|
||||
|
Loading…
x
Reference in New Issue
Block a user