/// Hash function for a specific round. Usually depends on a key.
pubtraitRound<R> {/// Type of the left half of the block.
typeL;/// Inspect the right half to generate a value to be xored with the left half.
fnrun(self, right:&R)->Self::L;}impl<L, R, F:FnOnce(&L)-> R>Round<L>forF{typeL= R;fnrun(self, right:&L)->Self::L{self(right)}}