pub trait Target<F: Func + ?Sized>: Term<F, Target = Self> { // Required methods fn block(&self) -> F::Block; fn block_mut(&mut self) -> &mut F::Block; }