gf256_macros/
lib.rs

1
2extern crate proc_macro;
3
4mod common;
5mod p;
6mod gf;
7#[cfg(feature="lfsr")] mod lfsr;
8#[cfg(feature="crc")] mod crc;
9#[cfg(feature="shamir")] mod shamir;
10#[cfg(feature="raid")] mod raid;
11#[cfg(feature="rs")] mod rs;
12
13
14#[proc_macro_attribute]
15pub fn p(
16    args: proc_macro::TokenStream,
17    input: proc_macro::TokenStream
18) -> proc_macro::TokenStream {
19    p::p(args, input)
20}
21
22#[proc_macro_attribute]
23pub fn gf(
24    args: proc_macro::TokenStream,
25    input: proc_macro::TokenStream
26) -> proc_macro::TokenStream {
27    gf::gf(args, input)
28}
29
30#[cfg(feature="lfsr")]
31#[proc_macro_attribute]
32pub fn lfsr(
33    args: proc_macro::TokenStream,
34    input: proc_macro::TokenStream
35) -> proc_macro::TokenStream {
36    lfsr::lfsr(args, input)
37}
38
39#[cfg(feature="crc")]
40#[proc_macro_attribute]
41pub fn crc(
42    args: proc_macro::TokenStream,
43    input: proc_macro::TokenStream
44) -> proc_macro::TokenStream {
45    crc::crc(args, input)
46}
47
48#[cfg(feature="shamir")]
49#[proc_macro_attribute]
50pub fn shamir(
51    args: proc_macro::TokenStream,
52    input: proc_macro::TokenStream
53) -> proc_macro::TokenStream {
54    shamir::shamir(args, input)
55}
56
57#[cfg(feature="raid")]
58#[proc_macro_attribute]
59pub fn raid(
60    args: proc_macro::TokenStream,
61    input: proc_macro::TokenStream
62) -> proc_macro::TokenStream {
63    raid::raid(args, input)
64}
65
66#[cfg(feature="rs")]
67#[proc_macro_attribute]
68pub fn rs(
69    args: proc_macro::TokenStream,
70    input: proc_macro::TokenStream
71) -> proc_macro::TokenStream {
72    rs::rs(args, input)
73}