Skip to content

Commit b7e3ea6

Browse files
committed
feat: remove derive feature from arbitrary support
1 parent ffbc6ab commit b7e3ea6

File tree

4 files changed

+16
-16
lines changed

4 files changed

+16
-16
lines changed

Cargo.lock

Lines changed: 0 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ arbitrary = ["dep:arbitrary"]
1616
serde = ["dep:serde"]
1717

1818
[dependencies]
19-
arbitrary = { version = "1", features = ["derive"], optional = true }
19+
arbitrary = { version = "1", optional = true }
2020
serde = { version = "1", optional = true }
2121

2222
[dev-dependencies]

src/arbitrary.rs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
use arbitrary::{Arbitrary, Unstructured};
2+
3+
use crate::ByteSize;
4+
5+
impl Arbitrary<'_> for ByteSize {
6+
fn arbitrary(u: &mut Unstructured<'_>) -> arbitrary::Result<Self> {
7+
Ok(ByteSize(u64::arbitrary(u)?))
8+
}
9+
10+
fn size_hint(depth: usize) -> (usize, Option<usize>) {
11+
u64::size_hint(depth)
12+
}
13+
}

src/lib.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@
2727
//! assert_eq!("518.0 GB", ByteSize::gb(518).to_string_as(false));
2828
//! ```
2929
30+
#[cfg(feature = "arbitrary")]
31+
mod arbitrary;
3032
mod parse;
3133
#[cfg(feature = "serde")]
3234
mod serde;
@@ -105,7 +107,6 @@ pub fn pib<V: Into<u64>>(size: V) -> u64 {
105107

106108
/// Byte size representation
107109
#[derive(Copy, Clone, PartialEq, PartialOrd, Eq, Ord, Hash, Default)]
108-
#[cfg_attr(feature = "arbitrary", derive(arbitrary::Arbitrary))]
109110
pub struct ByteSize(pub u64);
110111

111112
impl ByteSize {

0 commit comments

Comments
 (0)