diff --git a/doc/uuid/string_generator.adoc b/doc/uuid/string_generator.adoc index 423504d..19e7f9d 100644 --- a/doc/uuid/string_generator.adoc +++ b/doc/uuid/string_generator.adoc @@ -14,8 +14,8 @@ struct string_generator { using result_type = uuid; - template - constexpr uuid operator()( std::basic_string const& s ) const; + template + constexpr uuid operator()( Str const& s ) const; template constexpr uuid operator()( Ch const* s ) const; @@ -55,11 +55,14 @@ hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh Invalid input will generate a `std::runtime_error` exception. ``` -template - constexpr uuid operator()( std::basic_string const& s ) const; +template + constexpr uuid operator()( Str const& s ) const; ``` -Requires: :: The character type `Ch` of `s` must be one of `char`, `wchar_t`, `char8_t`, `char16_t`, `char32_t`. +Requires: :: + `Str` must be a _string-like_ type; that is, one with a nested `value_type` type (`Ch`) and with a nested `traits_type` type. + `str.data()` must return `Ch const*`. `str.data() + str.size()` must be of type `Ch const*`. + `Ch` must be a character type (one of `char`, `wchar_t`, `char8_t`, `char16_t`, `char32_t`). Effects: :: Parses the string `s` into a `uuid` and returns the result.