Sha256: 39a55dcce5a127b2f85e9127a810b4aa3318e408cac93ff678301a2120aac5b5
Contents?: true
Size: 1.12 KB
Versions: 33
Compression:
Stored size: 1.12 KB
Contents
#![allow(clippy::let_underscore_untyped)] use paste::paste; use paste_test_suite::paste_test; #[test] fn test_attr() { paste! { #[paste_test(k = "val" "ue")] struct A; #[paste_test_suite::paste_test(k = "val" "ue")] struct B; #[::paste_test_suite::paste_test(k = "val" "ue")] struct C; #[paste_test(k = "va" [<l u>] e)] struct D; } let _ = A; let _ = B; let _ = C; let _ = D; } #[test] fn test_paste_cfg() { macro_rules! m { ($ret:ident, $width:expr) => { paste! { #[cfg(any(feature = "protocol_feature_" $ret:snake, target_pointer_width = "" $width))] fn new() -> $ret { todo!() } } }; } struct Paste; #[cfg(target_pointer_width = "64")] m!(Paste, 64); #[cfg(target_pointer_width = "32")] m!(Paste, 32); let _ = new; } #[test] fn test_path_in_attr() { macro_rules! m { (#[x = $x:ty]) => { stringify!($x) }; } let ty = paste! { m!(#[x = foo::Bar]) }; assert_eq!("foo::Bar", ty); }
Version data entries
33 entries across 33 versions & 1 rubygems