#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

#82 in #trait

Download history 1386/week @ 2024-01-21 1157/week @ 2024-01-28 1288/week @ 2024-02-04 857/week @ 2024-02-11 826/week @ 2024-02-18 1016/week @ 2024-02-25 1554/week @ 2024-03-03 1091/week @ 2024-03-10 1318/week @ 2024-03-17 972/week @ 2024-03-24 1032/week @ 2024-03-31 1021/week @ 2024-04-07 900/week @ 2024-04-14 1047/week @ 2024-04-21 1047/week @ 2024-04-28 1335/week @ 2024-05-05

4,477 downloads per month
Used in 21 crates (3 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

~300–750KB
~18K SLoC