• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #![no_std]
2 #![forbid(unsafe_code)]
3 
4 // ANDROID: Unconditionally use std to allow building as a dylib.
5 extern crate std;
6 
7 #[macro_export]
8 macro_rules! impl_mirrored {
9     {
10     type Mirror = $tinyname:ident;
11     $(
12         $(#[$attr:meta])*
13         $v:vis fn $fname:ident ($seif:ident : $seifty:ty $(,$argname:ident : $argtype:ty)*) $(-> $ret:ty)? ;
14     )*
15     } => {
16         $(
17         $(#[$attr])*
18         #[inline(always)]
19         $v fn $fname($seif : $seifty, $($argname: $argtype),*) $(-> $ret)? {
20             match $seif {
21                 $tinyname::Inline(i) => i.$fname($($argname),*),
22                 $tinyname::Heap(h) => h.$fname($($argname),*),
23             }
24         }
25         )*
26     };
27 }
28 
29