# Pre-RFC: allow by-value drop

**URL:** <https://internals.rust-lang.org/t/pre-rfc-allow-by-value-drop/1845>\
**Category:** ideas (deprecated)\
**Created:** [April 8, 2015, 4:10pm UTC](https://internals.rust-lang.org/t/pre-rfc-allow-by-value-drop/1845 "2015-04-08T16:10:52Z")\
**Posts on this page:** 1\
**Showing post:** 12

<div class="post-metadata">

**Author:** ![aidancully](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/aidancully/32/5532_2.png) [@aidancully](https://internals.rust-lang.org/u/aidancully)\
**Post date:** [April 10, 2015, 5:10pm UTC](https://internals.rust-lang.org/t/pre-rfc-allow-by-value-drop/1845/12 "2015-04-10T17:10:39Z")

</div>

Thanks, @arielb1, that’s how it seemed to me, too. I suppose an alternative would be to use a `move` keyword to mark a match as consuming (or possibly to override `Copy` semantics, and force a move?):

```rust
match move x { _ => () };

```

but difficulty in handling cases where a consuming destructuring isn’t easy is the main reason I stopped investigating this sort of mechanism when I looked at the problem.

---

_[View the full topic](https://internals.rust-lang.org/t/pre-rfc-allow-by-value-drop/1845)._
