is_encode_injective_v

Looks to see if the encode_one operation on a given encoding type is injective.

This classification checks whether the given encoding type has a type definition called is_encode_injective on it, and if it does checks to see if its std::true_type. If it’s not present, or if it’s std::false_type, then the encoding is assumed to NOT be injective.

template<typename _Type>
class is_encode_injective : public __is_encode_injective_sfinae<_Type>

Checks whether or not the encoding step for _Type is injective (cannot possibly lose information regardless of whatever valid input is put in).

Remark

If the encoding object does not define is_encode_injective, it is assumed to be false (the safest default).

tparam _Type

The encoding type to check.

template<typename _Type>
constexpr bool ztd::text::is_encode_injective_v = is_encode_injective<_Type>::value

A ::value alias for ztd::text::is_encode_injective.