1
0
Fork 0
forked from wry/wry

autocommit 2022-02-01 23:33:59 CET

This commit is contained in:
Julian Orth 2022-02-01 23:33:59 +01:00
parent 41c5f8cf89
commit 2dbe3ba732
21 changed files with 814 additions and 86 deletions

View file

@ -24,6 +24,31 @@ macro_rules! handle_request {
}
}
};
($oname:ty, $ename:ty; $($code:ident => $f:ident,)*) => {
impl crate::object::ObjectHandleRequest for $oname {
fn handle_request(
self: std::rc::Rc<Self>,
request: u32,
parser: crate::utils::buffd::MsgParser<'_, '_>,
) -> Result<(), crate::client::ClientError> {
fn handle_request(
slf: std::rc::Rc<$oname>,
request: u32,
parser: crate::utils::buffd::MsgParser<'_, '_>,
) -> Result<(), $ename> {
match request {
$(
$code => slf.$f(parser)?,
)*
_ => unreachable!(),
}
Ok(())
}
handle_request(self, request, parser)?;
Ok(())
}
}
};
}
macro_rules! bind {