Range-v3
Range algorithms, views, and actions for the Standard Library
std::common_type<... > Struct Template Reference