#deprecated #destructor #drop #unions #maybe-uninit #nightly #nodrop

deprecated nightly nodrop-union

A wrapper type to inhibit drop (destructor). Implementation crate for nodrop, the untagged unions implementation (which is unstable / requires nightly) as of this writing. ***Deprecated: Use ManuallyDrop or MaybeUninit instead!***

4 releases

Uses old Rust 2015

0.1.11 Oct 9, 2019
0.1.10 Nov 12, 2018
0.1.9 Sep 8, 2016
0.1.8 Sep 6, 2016

#8 in #unions

Download history 48/week @ 2024-03-11 37/week @ 2024-03-18 32/week @ 2024-03-25 74/week @ 2024-04-01 42/week @ 2024-04-08 40/week @ 2024-04-15 42/week @ 2024-04-22 40/week @ 2024-04-29 36/week @ 2024-05-06 38/week @ 2024-05-13 39/week @ 2024-05-20 45/week @ 2024-05-27 54/week @ 2024-06-03 53/week @ 2024-06-10 66/week @ 2024-06-17 50/week @ 2024-06-24

228 downloads per month
Used in 6 crates (2 directly)

MIT/Apache

7KB
97 lines

Recent Changes (nodrop-union)

  • 0.1.11

    • Mark nodrop deprecated

      With the release of arrayvec 0.5, nodrop is unused.

      With the release of Rust 1.36 and MaybeUninit, nodrop-union has no purpose at all (it was only for nightly releases).

  • 0.1.10

    • Update to include license files in the crate by @ignatenkobrain
  • 0.1.9

    • Add Copy, Clone implementations
  • 0.1.8

    • Initial release

lib.rs:

A wrapper type to inhibit drop (destructor).

Deprecated: Use ManuallyDrop or MaybeUninit instead!

nodrop-union is the untagged unions (requires Rust nightly channel and unstable as of this writing) implementation for the nodrop crate.

It is intended you use this through the nodrop crate with the use_union crate feature enabled.

This is the future implementation of nodrop, once it is stable.

This implementation is a lot better:

  • Does not have a destructor at all
  • Can be Copy if T is Copy
  • No space overhead / no runtime flag

This means that this implementation has extensions that the stable nodrop does not yet have, which is something to be aware of if you are switching.

No runtime deps