#newtype #operator #macro #helper #foo #wartier #newtype-derive

newtype-ops

Mass-derive many operators for newtypes. Wartier than newtype_derive.

3 releases

0.1.4 May 16, 2019
0.1.3 Dec 15, 2016
0.1.2 Dec 15, 2016

#1205 in Rust patterns

Download history 904/week @ 2023-11-27 1058/week @ 2023-12-04 905/week @ 2023-12-11 619/week @ 2023-12-18 419/week @ 2023-12-25 607/week @ 2024-01-01 784/week @ 2024-01-08 1184/week @ 2024-01-15 1018/week @ 2024-01-22 962/week @ 2024-01-29 1127/week @ 2024-02-05 814/week @ 2024-02-12 837/week @ 2024-02-19 945/week @ 2024-02-26 1164/week @ 2024-03-04 570/week @ 2024-03-11

3,604 downloads per month
Used in 21 crates (6 directly)

WTFPL license

37KB
436 lines

newtype-ops

License Documentation Crates.io Version Build Status

A operator-deriving macro for newtypes that is wartier than newtype_derive, and therefore better.[Citation needed]

pub struct Foo(i32);

newtype_ops! { [Foo] integer {:=} {^&}Self {^&}{Self i32} }

// alternatively
newtype_ops! { [Foo] {add sub mul div rem neg not bitand bitor bitxor} {:=} {^&}Self {^&}{Self i32} }

Installation

So for once I have finally decided to actually publish a crate this time.

Cargo.toml

[dependencies]
newtype-ops = "0.1"

Documentation

Funny thing, actually, pretty much the sole reason I published the crate was so that I could link to docs.rs.

See the documentation for newtype_ops!

License

WTFPL 2.0

No runtime deps

Features