Commit Graph

110 Commits

Author SHA1 Message Date
zachs18
af8d110201
More TransparentWrapper impls (core::cmp::Reverse and core::num::Saturating) (#269)
* impl<T> TransparentWrapper<T> for core::cmp::Reverse<T>

* impl<T> TransparentWrapper<T> for core::num::Saturating<T>, with a new feature for non-base-MSRV stdlib TransparentWrapper impls.

* Restrict TransparentWrapper<T> for Reverse<T> to cfg(feature = "transparentwrapper_extra").

* nightly_docs for transparent_wrapper_extra

---------

Co-authored-by: Lokathor <zefria@gmail.com>
2024-10-30 23:30:11 -06:00
Lokathor
7b98ff1cec chore: Release bytemuck version 1.19.0 2024-10-12 22:09:07 -06:00
Christofer Nolander
da9b1874d8
add track_caller feature (#276)
closes #68
2024-10-12 22:06:43 -06:00
Thom Chiovoloni
bb368799c3
Improve documentation of features. (#272)
* Improve documentation of nightly features

* Document undocumented features
2024-09-05 19:57:56 -06:00
Lokathor
860c391345 chore: Release bytemuck version 1.18.0 2024-09-05 19:53:43 -06:00
Thom Chiovoloni
4c535f9a77
Clean up Cargo.toml (#271) 2024-09-05 19:51:06 -06:00
Thom Chiovoloni
19065703a5
Add a convenience feature indicating you're on the latest stable version of Rust (#270) 2024-09-05 19:36:58 -06:00
Lokathor
dc059fd187 chore: Release bytemuck version 1.17.1 2024-08-27 10:34:15 -06:00
Lokathor
3c42ba7f23 chore: Release bytemuck version 1.17.0 2024-08-16 00:43:55 -06:00
zachs18
5eecd33318
Make must_cast by-value and by-shared-ref functions const (#261)
* Make must_cast by-value and by-shared-ref functions const (but not by-mut-ref)

* Add comment for transmute! macro new arm, and update Cargo.toml comment for must_cast MSRV.
2024-08-11 01:59:06 -06:00
Lokathor
20f4a09404 chore: Release bytemuck version 1.16.3 2024-07-30 17:08:09 -06:00
Lokathor
758774d451 chore: Release bytemuck version 1.16.2 2024-07-30 16:37:41 -06:00
Lokathor
02ffd53a4e chore: Release bytemuck version 1.16.1 2024-06-18 21:26:50 -06:00
Trevor Gross
9b81537c5f
Support Zeroable and Pod for f16 and f128 (#251)
These are gated under a new feature flag `nightly_float`.

Fixes: <https://github.com/Lokathor/bytemuck/issues/250>
2024-06-18 21:24:29 -06:00
Urgau
f9f7bb10b3
Address unexpected_cfgs warnings instead of allowing the lint (#243) 2024-05-24 13:21:58 -06:00
Lokathor
4c46b919e2 chore: Release bytemuck version 1.16.0 2024-05-13 11:08:36 -06:00
Tyler Ruckinger
99e95084a6
support const zeroed() (#240) 2024-05-13 10:16:20 -06:00
Lokathor
4d2fc16208 chore: Release bytemuck version 1.15.0 2024-03-12 23:15:46 -06:00
Lokathor
49eed864ac chore: Release bytemuck version 1.14.3 2024-02-08 22:10:24 -07:00
Lokathor
04ed11bdd5 chore: Release bytemuck version 1.14.2 2024-02-06 19:55:05 -07:00
Lokathor
1e1a22e5ea chore: Release bytemuck version 1.14.1 2024-01-24 17:32:54 -07:00
Lokathor
ff0b14dae9 chore: Release bytemuck version 1.14.0 2023-09-05 15:32:43 -06:00
Lokathor
24b65bd05b changelog. 2023-09-05 14:56:04 -06:00
Lokathor
1ba4215050 Create align_offset feature so that we can continue to work on 1.34 2023-09-05 14:08:36 -06:00
José Luis Cruz
f047fb6aeb
improve documentation for optional features (#203)
- new feature `nightly_docs` enables `doc_cfg` unstable feature that allows showing explicit dependencies on features.
- new cargo alias `nightly_docs` for a more convenient local documentation build `cargo +nightly nightly_docs --open`.
- annotate exported items and implementations depending on some feature with the corresponding `doc(cfg())` attribute.
- add the `nightly_docs` feature to the `[package.metadata.docs.rs]` section.
2023-09-05 13:39:41 -06:00
MaulingMonkey
8f130f2b79
must_cast (#187) 2023-06-06 15:50:39 -06:00
Daniel Henry-Mantilla
e528c1662f
Add missing ?Sized for TransparentWrapperAlloc extension trait (#185)
* Add missing `?Sized` for `TransparentWrapperAlloc` extension trait

* chore: Release bytemuck version 1.13.2
2023-06-06 15:48:41 -06:00
Lokathor
b19f8abfe3 chore: Release bytemuck version 1.13.1 2023-02-28 13:40:46 -07:00
Lokathor
49c23727fa (cargo-release) version 1.13.0 2023-01-19 23:05:43 -07:00
Lokathor
0e65f1e64d bump bytemuck_derive min version. 2023-01-19 22:58:28 -07:00
Lokathor
cb5caf7bf8 (cargo-release) version 1.12.4 2023-01-19 13:48:06 -07:00
Christofer Nolander
a758c0956e
impl Zeroable for Atomic* (#157)
* `impl Zeroable for Atomic*`

fixes #74

* added feature flag for `zeroable_atomics`

Added documentation for some feature flags on the `Zeroable` trait.
Also fixed some invalid references in doc-comments.
2022-12-21 13:54:31 -07:00
Scallop Ye
2c8ce95548
Experimental support for stdsimd types (#154) 2022-12-17 16:13:52 -07:00
Lokathor
06a62314a3 (cargo-release) version 1.12.3 2022-11-05 15:53:28 -06:00
Lokathor
7b67524a43 (cargo-release) version 1.12.2 2022-10-30 16:23:59 -06:00
Lokathor
950a3ed3b9 use the new derive updates. 2022-08-16 21:03:48 -06:00
Lokathor
995205de23 version bump 2022-08-14 10:10:45 -06:00
Tom Dohrmann
2c97676bfc
support deriving Pod for packed generic types. (#123)
* improve `#[repr]` parsing

* allow deriving `Pod` for packed generic types

* Revert "Update Cargo.toml"

This reverts commit 6632bcef2c.
2022-08-07 14:32:00 -06:00
Lokathor
d75942c484 (cargo-release) version 1.11.0 2022-07-23 21:15:23 -06:00
Lokathor
89bbdb1620 spelling 2022-07-18 19:25:57 -06:00
Lokathor
bf68430b59 (cargo-release) version 1.10.0 2022-07-02 18:14:46 -06:00
Lokathor
b75005c4d0 (cargo-release) version 1.9.1 2022-04-01 23:49:36 -06:00
Justin Starry
26e1495d61
Bump bytemuck_derive dependency to required version (#97) 2022-04-01 11:55:28 -06:00
Lokathor
73eaaaf9b8 (cargo-release) version 1.9.0 2022-03-29 23:14:16 -06:00
Lokathor
950ae43012 back to the correct derive dependency line 2022-03-29 23:13:34 -06:00
Gray Olson
b472189ff8
Add NoPadding, AnyBitPattern, and CheckedBitPattern traits (#91)
* add MaybePod and NoPadding traits

* MaybePod and NoPadding derive macros

* fix doctest

* fmt

* fix bad doc link

* move new casting functions into separate modules

* fmt

* fix doctest and derive test

* remove relaxed module, add anybitpattern

* rename MaybePod to CheckedCastFromPod

* rename checked casting functions

* rework CheckedCastFromPod into CheckedBitPattern

* add anybitpattern derive, fix up other derives

* fix doctest

* fix derive trait of bits type

* export AnyBitPattern derive

* export anybitpattern from traits

* actually export derive macro for AnyBitPattern

* make bits struct pub because of type leaking rules

* allow clippy lint in derive

* add copy bound to CheckedBitPattern

* - replace Pod bounds with NoPadding+AnyBitPattern
- add try and panic versions of checked cast functions
- slightly update docs

* fix derive tests

* - adapt the allocation module cast functions as well
- as part of that, make AnyBitPattern a subtrait of Zeroable
- AnyBitPattern derive also derives Zeroable

* @JakobDegen and @zakarumych nits

* superset -> subset on CheckedBitPattern and NoPadding docs

* derive Debug on generated `Bits` structs, which can be useful for debugging failures

* don't derive debug on spirv target arch

* make it work on 1.34

* merge conflicts

* fix erroneous behavior in doctest
2022-03-29 17:01:02 -06:00
Lokathor
4569a30c9f (cargo-release) version 1.8.0 2022-03-01 18:12:36 -07:00
Christopher Serr
6029639753
Implement Pod and Zeroable for AArch64 NEON Vectors (#80)
* Implement `Pod` and `Zeroable` for AArch64 NEON Vectors

The NEON intrinsics will be stabilized in Rust 1.59.

* Compile all-features only on nightly
2021-12-21 19:01:47 -07:00
Lokathor
e32f013a06 (cargo-release) version 1.7.3 2021-12-15 23:20:30 -07:00
Lokathor
dd01ccae42 nightly_portable_simd 2021-12-15 23:16:38 -07:00