Introduce OptionalApplyPipe and use for optional match