Callable object applying the Callable object f on each element of a product type.
f is applied on the values if the given product_type is a record type.
Note
This function does not take part in overload resolution if f can't be applied to the elements of t and/or ts, or if the product type are not compatible.