commit | 1db3d8e76d9fca9502335c1b3382e51f1da9f464 | [log] [tgz] |
---|---|---|
author | David Tolnay <dtolnay@gmail.com> | Wed May 08 16:10:25 2019 -0700 |
committer | David Tolnay <dtolnay@gmail.com> | Wed May 08 18:47:13 2019 -0700 |
tree | 5f224d5d624ae2ed7601006ffb8af33a281c5611 | |
parent | 490b91bbcb52f50dadc871e4e163cf22e505d47a [diff] [blame] |
Factor out full macro
diff --git a/codegen/src/full.rs b/codegen/src/full.rs new file mode 100644 index 0000000..a410031 --- /dev/null +++ b/codegen/src/full.rs
@@ -0,0 +1,20 @@ +use proc_macro2::TokenStream; +use quote::quote; + +pub fn get_macro() -> TokenStream { + quote! { + #[cfg(feature = "full")] + macro_rules! full { + ($e:expr) => { + $e + }; + } + + #[cfg(all(feature = "derive", not(feature = "full")))] + macro_rules! full { + ($e:expr) => { + unreachable!() + }; + } + } +}