Models a string-like class with indexing, concatenation, length, and value_type.
More...
#include <mxvk/include/mxvk/argz.hpp>
template<typename T>
concept StringType = std::is_class_v<T> &&
requires(T type) {
type.length();
type[0];
type += type;
type = type;
typename T::value_type;
typename T::size_type;
{ type.length() } -> std::same_as<typename T::size_type>;
{ type[0] } -> std::same_as<typename T::value_type &>;
{ type += T{} } -> std::same_as<T &>;
{ type = T{} } -> std::same_as<T &>;
}
Models a string-like class with indexing, concatenation, length, and value_type.
Models a string-like class with indexing, concatenation, length, and value_type.
Both std::string and std::wstring satisfy this concept.
- Template Parameters
-
Definition at line 65 of file argz.hpp.