}
}
+#[macro_export]
+macro_rules! usual_wanted_tests {
+ ($ctx:ty, $su:ident) => {
+ impl $ctx {
+ fn wanted_tests(&mut self) -> &mut TrackWantedTests {
+ &mut self.su.wanted_tests
+ }
+ }
+ }
+}
+
#[macro_export]
macro_rules! test {
($c:expr, $tname:expr, $s:stmt) => {
bob: Player,
}
deref_to_field!{Ctx, SetupCore, su}
-
-impl Ctx {
- fn wanted_tests(&mut self) -> &mut TrackWantedTests {
- &mut self.su.wanted_tests
- }
-}
+usual_wanted_tests!{Ctx, su}
#[derive(Debug)]
struct Player {
su: Setup,
alice: Window,
}
+usual_wanted_tests!{Ctx, su}
impl Ctx {
- fn wanted_tests(&mut self) -> &mut TrackWantedTests {
- &mut self.su.wanted_tests
- }
-
#[throws(AE)]
fn check_link(&mut self, desc: &'static str, url: Option<&str>) {
(||{
bob: Window,
}
deref_to_field!{Ctx, Setup, su}
-
-impl Ctx {
- fn wanted_tests(&mut self) -> &mut TrackWantedTests {
- &mut self.su.wanted_tests
- }
-}
+usual_wanted_tests!{Ctx, su}
const HAND: &str = "6.1";
const ALICE: &str = "1#1";
spec: GameSpec,
}
deref_to_field!{Ctx, Setup, su}
+usual_wanted_tests!{Ctx, su}
impl Ctx {
- fn wanted_tests(&mut self) -> &mut TrackWantedTests {
- &mut self.su.wanted_tests
- }
-
#[throws(AE)]
fn drag(&mut self){
let su = &mut self.su;