bluss
34459766c2
Use u8 field in the NoDrop Dropped variant
...
We need to ensure NoDrop<&T> and similar are not using the enum layout
optimization. Using an enum { Alive(T), Dropped(u8) } is a simple way to
do that. The NoDrop (non-unions version) was already always at least
1 byte large anyway.
2017-02-23 20:19:11 +01:00
bluss
0327b0c164
nodrop: Fix warning for unused import
2016-09-06 19:20:14 +02:00
bluss
57348a2677
nodrop: Add nightly feature use_union
...
Use a separate crate (nodrop-union) so that we can conditionally use the
new union keyword without disrupting compatibility.
2016-09-06 11:41:47 +02:00
bluss
af8f6b5d6e
nodrop: Remove the no_drop_flag crate feature
...
This unstable feature is not supported in nightly anymore (and nor is it
meaningful).
2016-08-25 16:21:57 +02:00
bluss
6ab78bbe6c
nodrop: Add std as default feature to enable libstd
2016-02-06 19:30:42 +01:00
Jonathan S
7f21c9d79f
Support no_std in nodrop
2016-02-05 19:59:38 -06:00
bluss
2d55a2d507
nodrop: Add feature flag use_needs_drop; Tag version 0.1.5
2015-12-14 04:21:44 +01:00
root
7c92874782
nodrop: Use odds & bump version
2015-06-02 17:28:04 +02:00
root
09cf5168f9
nodrop: Add no_drop_flag optional feature
2015-05-26 17:05:42 +02:00
root
6d02ab3980
Test that Option<Flag<T>> doesn't apply any layout optimization
2015-05-24 23:53:02 +02:00
root
00466e6efd
Simplify drop test (Rc is redundant)
2015-05-21 16:04:38 +02:00
root
14550015d9
nodrop: Small improvement of into_inner
2015-05-21 16:04:11 +02:00
root
c146002c83
Split out nodrop::NoDrop to its own crate
2015-05-21 11:53:05 +02:00