#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

#2052 in Rust patterns

Download history 1020/week @ 2024-07-24 950/week @ 2024-07-31 835/week @ 2024-08-07 1157/week @ 2024-08-14 904/week @ 2024-08-21 1182/week @ 2024-08-28 1776/week @ 2024-09-04 1609/week @ 2024-09-11 1736/week @ 2024-09-18 1320/week @ 2024-09-25 1518/week @ 2024-10-02 1885/week @ 2024-10-09 1758/week @ 2024-10-16 1604/week @ 2024-10-23 5630/week @ 2024-10-30 3918/week @ 2024-11-06

13,340 downloads per month
Used in 22 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