base.EitherMatch[A,B,R]

mut .b(x: B): R,
mut .a(x: A): R,
mut .b(x: B): R,
mut .a(x: A): R,