Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- macro_rules! helper {
- ($name:ident, Write) => {mut $name};
- ($name:ident, WriteExpect) => {mut $name};
- ($name:ident, WriteStorage) => {mut $name};
- ($name:ident, Read) => {$name};
- ($name:ident, ReadExpect) => {$name};
- ($name:ident, ReadStorage) => {$name};
- }
- macro_rules! system {
- ($name:ident = $($cname:ident <- $typ:ident<$life:tt,$ctype:ty>;)* $es:block) => {
- struct $name;
- impl<'a> System<'a> for $name {
- type SystemData = ($( $typ<$life,$ctype>, )*);
- fn run(&mut self, ($( helper!($cname, $typ),)*): Self::SystemData)
- {
- $es
- }
- }
- };
- }
Add Comment
Please, Sign In to add comment