#traits #no-std

deprecated macro no-std extension-trait

Macro to declare extension traits

11 releases (3 stable)

1.0.2 Mar 20, 2023
1.0.1 Jan 27, 2022
1.0.0 Jan 1, 2021
0.2.3 Nov 16, 2020
0.1.2 Nov 5, 2017

#58 in #trait

Download history 1259/week @ 2024-11-16 2293/week @ 2024-11-23 1582/week @ 2024-11-30 1828/week @ 2024-12-07 1819/week @ 2024-12-14 535/week @ 2024-12-21 748/week @ 2024-12-28 1855/week @ 2025-01-04 2495/week @ 2025-01-11 1861/week @ 2025-01-18 2415/week @ 2025-01-25 3165/week @ 2025-02-01 2483/week @ 2025-02-08 1740/week @ 2025-02-15 1905/week @ 2025-02-22 3591/week @ 2025-03-01

10,210 downloads per month
Used in 24 crates (5 directly)

MIT/Apache

9KB
152 lines

extension-trait

A macro to declare extension traits - a trait that is created to add methods to an external type.

Example

#[macro_use]
extern crate extension_trait;

#[extension_trait]
pub impl DoubleExt for str {
   fn double(&self) -> String {
       self.repeat(2)
   }
}

fn main() {
    assert_eq!("Hello".double(), "HelloHello");
}

Dependencies

~210–650KB
~15K SLoC