template <class T>
struct vtb::base::floating_point_field
using value_type = T
value_type & value
struct vtb::base::unsigned_field
using signed_value_type = std::make_signed< T >::type
make_floating_point_field(T & value) -> floating_point_field< T >
make_unsigned_field(T & value) -> unsigned_field< T >