# Filter\_take function pre-RFC

**URL:** <https://internals.rust-lang.org/t/filter-take-function-pre-rfc/5864>\
**Category:** libs\
**Created:** [September 5, 2017, 8:34pm UTC](https://internals.rust-lang.org/t/filter-take-function-pre-rfc/5864 "2017-09-05T20:34:33Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![mbrubeck](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/mbrubeck/32/174_2.png) [@mbrubeck](https://internals.rust-lang.org/u/mbrubeck)\
**Post date:** [September 5, 2017, 8:51pm UTC](https://internals.rust-lang.org/t/filter-take-function-pre-rfc/5864/3 "2017-09-05T20:51:56Z")

</div>

This was recently added to `Vec` with the name [`drain_filter`](https://doc.rust-lang.org/nightly/std/vec/struct.Vec.html#method.drain_filter). It’s currently [unstable](https://github.com/rust-lang/rust/issues/43244). I don’t think it’s been implemented for other standard collection types, yet. See also [this previous thread](https://internals.rust-lang.org/t/pre-rfc-adding-retain-or-drain-method-to-vec-t-that-allows-you-retrieve-the-elements-that-are-deleted-from-retain/5675).

---

_[View the full topic](https://internals.rust-lang.org/t/filter-take-function-pre-rfc/5864)._
