diff options
| author | Alexis Beingessner <a.beingessner@gmail.com> | 2015-07-20 15:35:33 -0700 |
|---|---|---|
| committer | Alexis Beingessner <a.beingessner@gmail.com> | 2015-07-20 15:35:33 -0700 |
| commit | 06ded9c04e23ceaa41a4a5d01dd54432aaafd0db (patch) | |
| tree | fe28d8b3d501c1cf73ac83db7bd75ca46f077100 | |
| parent | 0a36ea7db130dfaa6012d76ccf80b9b77e15796b (diff) | |
| download | rust-06ded9c04e23ceaa41a4a5d01dd54432aaafd0db.tar.gz rust-06ded9c04e23ceaa41a4a5d01dd54432aaafd0db.zip | |
explain phantom
| -rw-r--r-- | src/doc/tarpl/vec-drain.md | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/doc/tarpl/vec-drain.md b/src/doc/tarpl/vec-drain.md index b6b28266600..23671978369 100644 --- a/src/doc/tarpl/vec-drain.md +++ b/src/doc/tarpl/vec-drain.md @@ -8,6 +8,9 @@ untouched. For now we'll only implement the "basic" full-range version. use std::marker::PhantomData; struct Drain<'a, T: 'a> { + // Need to bound the lifetime here, so we do it with `&'a mut Vec<T>` + // because that's semantically what we contain. We're "just" calling + // `pop()` and `remove(0)`. vec: PhantomData<&'a mut Vec<T>> start: *const T, end: *const T, |
