open fun <N : Any> mapping(mapper: M.(String) -> N?, onEvent: suspend M.(N) -> R): Ret
如果 mapper 返回值非空, 就执行 onEvent