From 5dafb0976770e24c32c2d70e32e421eff7adc0f9 Mon Sep 17 00:00:00 2001 From: Krystian Stasiowski Date: Fri, 28 Feb 2020 22:16:28 -0500 Subject: [PATCH] Fix doc build --- .gitignore | 3 +- doc/Jamfile | 184 +++++++++++--- doc/source.dox | 7 +- doc/xsl/config.xsl | 2 +- include/boost/static_string/static_string.hpp | 235 ++++++++++-------- 5 files changed, 286 insertions(+), 145 deletions(-) diff --git a/.gitignore b/.gitignore index 1740b53..74f33d3 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,5 @@ bin64/ # Because of CMake and VS2017 Win32/ x64/ - +.vs/ +out/ \ No newline at end of file diff --git a/doc/Jamfile b/doc/Jamfile index 13c2c8b..ae8b8e2 100644 --- a/doc/Jamfile +++ b/doc/Jamfile @@ -1,5 +1,6 @@ # -# Copyright (c) 2013-2019 Vinnie Falco (vinnie dot falco at gmail dot com) +# Copyright (c) 2013-2017 Vinnie Falco (vinnie dot falco at gmail dot com) +# Copyright (c) 2020 Krystian Stasiowski (sdkrystian at gmail dot com) # # Distributed under the Boost Software License, Version 1.0. (See accompanying # file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) @@ -15,6 +16,7 @@ import xsltproc ; import doxygen ; import modules ; import saxonhe ; +import common ; #------------------------------------------------------------------------------- # @@ -30,36 +32,12 @@ local sources = [ path.glob-tree ../include/boost/static_string : *.hpp *.ipp : .doxygen = [ doxygen.name ] ; .doxygen ?= doxygen ; +#ECHO Using doxygen from "$(.doxygen)" ; + .xsltproc = [ xsltproc.name ] ; .xsltproc ?= xsltproc ; -#------------------------------------------------------------------------------- -# -# Generate transform.xsl. This xsl transfomration takes as input -# the Doxygen-generated XML and produces QuickBook output. -# -make transform.xsl - : - docca/include/docca/doxygen.xsl - xsl/config.xsl - xsl/class_detail.xsl - xsl/includes.xsl - xsl/includes_foot.xsl - : - @make_transform - ; - -# Make a copy of the docca transform. Then, insert our -# customizations into the specially marked locations using sed. -# -actions make_transform -{ - cp $(2[1]) $(1) - sed -i -e "//{r $(2[2])" -e "d}" $(1) - sed -i -e "//{r $(2[3])" -e "d}" $(1) - sed -i -e "//{r $(2[4])" -e "d}" $(1) - sed -i -e "//{r $(2[5])" -e "d}" $(1) -} +#ECHO Using xsltproc from "$(.xsltproc)" ; #------------------------------------------------------------------------------- # @@ -102,8 +80,144 @@ else } } +#------------------------------------------------------------------------------- +# +# Copy all the XSLT modules to the target directory. +# +# FIXME: Change this so we can just specify a directory, +# rather than every file individually. +# +# Also, somehow force dependencies in a general way +# such that the XSLT has to be executed again +# if any of the modules change. For example, +# if base-extract-xml-pages.xml changes, then +# an invocation of extract-xml-pages.xsl (which +# imports the former) must be run again. +# +path-constant docca : ../../../tools/docca ; +make extract-xml-pages.xsl : $(docca)/include/docca/extract-xml-pages.xsl : @copy_script ; +make base-extract-xml-pages.xsl : $(docca)/include/docca/base-extract-xml-pages.xsl : @copy_script ; +make common.xsl : $(docca)/include/docca/common.xsl : @copy_script ; +make stage1.xsl : $(docca)/include/docca/stage1.xsl : @copy_script ; +make base-stage1.xsl : $(docca)/include/docca/base-stage1.xsl : @copy_script ; +make stage2.xsl : $(docca)/include/docca/stage2.xsl : @copy_script ; +make assemble-quickbook.xsl : $(docca)/include/docca/assemble-quickbook.xsl : @copy_script ; +make emphasized-types.xsl : $(docca)/include/docca/emphasized-types.xsl : @copy_script ; + +make config.xsl + : + $(docca)/include/docca/config.xsl + xsl/config.xsl + xsl/class_detail.xsl + xsl/includes.xsl + : + @make_config + ; + +actions make_config +{ + cp $(2[1]) $(1) + sed -i -e "//{r $(2[2])" -e "d}" $(1) + sed -i -e "//{r $(2[3])" -e "d}" $(1) + sed -i -e "//{r $(2[4])" -e "d}" $(1) +} + +# Make a copy of the given file. +# +actions copy_script +{ + cp $(2[1]) $(1) +} + + +# This is to initially create the directory as a side effect; I'm sure there's a better way... +make xml-pages/directory/placeholder : index.xml : @null_action ; + +#------------------------------------------------------------------------------- +# +# Run index.xml through the first transformation stage +# (assembling and splitting the XML into page-specific files). +# +make xml-pages.xml + : + index.xml + extract-xml-pages.xsl + + # Make bjam aware of additional dependencies + base-extract-xml-pages.xsl + config.xsl + common.xsl + : + saxonhe.saxonhe + ; + +# This is just to make the directory eligible as a source +make xml-pages : index.xml : @null_action ; + +# Not ready for prime time until I figure out how to get the xslt-visualizer code in place +#make stage1/code-trace-enabled/stage1.xsl +# : +# stage1.xsl +# xslt-visualizer/xsl/trace-enable.xsl +# : +# saxonhe.saxonhe +# ; + +# This is to initially create the directory as a side effect; I'm sure there's a better way... +make stage1/results/directory/placeholder : xml-pages.xml : @null_action ; +make stage2/results/directory/placeholder : xml-pages.xml : @null_action ; + +# TODO: figure out why this (and the following stage) get built every time +make stage1/results + : + xml-pages + stage1.xsl + + # additional dependencies + xml-pages.xml + base-stage1.xsl + config.xsl + common.xsl + : + saxonhe.saxonhe_dir + ; + +make stage2/results + : + stage1/results + stage2.xsl + + # additional dependencies + emphasized-types.xsl + : + saxonhe.saxonhe_dir + ; + +make reference.qbk + : + xml-pages.xml + assemble-quickbook.xsl + + # TODO: make this input to the XSLT somehow + # rather than relying on it being hard-coded + # in the XSLT (which it is!) + stage2/results + : + saxonhe.saxonhe + ; + +actions make_dir +{ + mkdir $(1) +} + make combine.xslt : index.xml : @null_action ; +actions touch_file +{ + touch $(1) ; +} + actions null_action { touch -c $(1) ; @@ -127,13 +241,13 @@ actions call-xsltproc # Produce the reference.qbk file by running # the reference xml through the transform. # -make reference.qbk - : - reference.xml - transform.xsl - : - saxonhe.saxonhe - ; +#make reference.qbk +# : +# reference.xml +# transform.xsl +# : +# saxonhe.saxonhe +# ; # We have to make a copy of reference.qbk and put it # in a place where the static .qbk files can find it diff --git a/doc/source.dox b/doc/source.dox index 8146ea4..428bd47 100644 --- a/doc/source.dox +++ b/doc/source.dox @@ -35,7 +35,12 @@ INCLUDE_PATH = ../ INCLUDE_FILE_PATTERNS = PREDEFINED = \ - BOOST_STATIC_STRING_DOCS + BOOST_STATIC_STRING_DOCS \ + "BOOST_STATIC_STRING_CPP11_CONSTEXPR=constexpr" \ + "BOOST_STATIC_STRING_CPP14_CONSTEXPR=constexpr" \ + "BOOST_STATIC_STRING_CPP17_CONSTEXPR=constexpr" \ + "BOOST_STATIC_STRING_CPP20_CONSTEXPR=constexpr" + EXPAND_AS_DEFINED = SKIP_FUNCTION_MACROS = YES diff --git a/doc/xsl/config.xsl b/doc/xsl/config.xsl index 813a951..ddeda40 100644 --- a/doc/xsl/config.xsl +++ b/doc/xsl/config.xsl @@ -1,5 +1,5 @@ - + diff --git a/include/boost/static_string/static_string.hpp b/include/boost/static_string/static_string.hpp index 4ac87b1..e17bbeb 100644 --- a/include/boost/static_string/static_string.hpp +++ b/include/boost/static_string/static_string.hpp @@ -685,7 +685,7 @@ find_first_of( return last; } -// Check if a pointer lies within the range [src_first, src_last) +// Check if a pointer lies within the range {src_first, src_last) // without unspecified behavior, allowing it to be used // in a constant evaluation. template @@ -1089,8 +1089,9 @@ public: Replace the contents with `count` copies of character `ch` - @throw std::length_error if `count > max_size()` @return `*this` + + @throw std::length_error if `count > max_size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -1102,8 +1103,9 @@ public: Replace the contents with a copy of another `basic_static_string` - @throw std::length_error if `s.size() > max_size()` @return `*this` + + @throw std::length_error if `s.size() > max_size()` */ template max_size()` - @return `*this` */ template BOOST_STATIC_STRING_CPP14_CONSTEXPR @@ -1159,8 +1162,9 @@ public: Replace the contents with the first `count` characters of `s`, including nulls. - @throw std::length_error if `count > max_size()` @return `*this` + + @throw std::length_error if `count > max_size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -1172,8 +1176,9 @@ public: Replace the contents with a copy of a null terminated string `s` - @throw std::length_error if `traits_type::length(s) > max_size()` @return `*this` + + @throw std::length_error if `traits_type::length(s) > max_size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -1186,8 +1191,9 @@ public: Replace the contents with a copy of characters from the range `(first, last)` - @throw std::length_error if `std::distance(first, last) > max_size()` @return `*this` + + @throw std::length_error if `std::distance(first, last) > max_size()` */ template BOOST_STATIC_STRING_CPP14_CONSTEXPR @@ -1206,8 +1212,9 @@ public: Replace the contents with the characters in an initializer list - @throw std::length_error if `ilist.size() > max_size()` @return `*this` + + @throw std::length_error if `ilist.size() > max_size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -1240,7 +1247,7 @@ public: Replace the contents with a copy of the characters from `string_view_type{t}.substr(pos, count)` - The range `[pos, count)` is extracted from the value + The range `{pos, count)` is extracted from the value obtained by converting `t` to `string_view_type`, and used to assign the string. @@ -1794,7 +1801,7 @@ public: @par Precondition - `pos` shall be vaild within `[data(), data() + size()]` + `pos` shall be vaild within `{data(), data() + size()}` @par Exception Safety @@ -1827,7 +1834,7 @@ public: @par Precondition - `pos` shall be valid within `[data(), data() + size()]` + `pos` shall be valid within `{data(), data() + size()}` @par Exception Safety @@ -1855,14 +1862,14 @@ public: /** Insert a range of characters. - Inserts characters from the range `[first, last)` before the + Inserts characters from the range `{first, last)` before the character pointed to by `pos`. @par Precondition - `pos` shall be valid within `[data(), data() + size()]`, + `pos` shall be valid within `{data(), data() + size()}`, - `[first, last)` shall be a valid range + `{first, last)` shall be a valid range @par Exception Safety @@ -1923,7 +1930,7 @@ public: @par Precondition - `pos` shall be valid within `[data(), data() + size()]` + `pos` shall be valid within `{data(), data() + size()}` @par Exception Safety @@ -1953,11 +1960,11 @@ public: /** Insert characters from an object convertible to `string_view_type`. Constructs a temporary `string_view_type` object `sv` from `t` and - inserts `[sv.begin(), sv.end())` at `index`. + inserts `{sv.begin(), sv.end())` at `index`. @par Precondition - `index` shall be valid within `[data(), data() + size()]` + `index` shall be valid within `{data(), data() + size()}` @par Exception Safety @@ -2047,9 +2054,10 @@ public: } /** Removes `min(count, size() - index)` characters starting at `index` + + @return `*this` @throw std::out_of_range if `index > size()` - @return `*this` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -2108,8 +2116,9 @@ public: The appended characters may be null. - @throw std::length_error if `count > max_size() - size()` @return `*this` + + @throw std::length_error if `count > max_size() - size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -2123,8 +2132,9 @@ public: The appended string can contain null characters. - @throw std::length_error if `s.size() > max_size() - size()` @return `*this` + + @throw std::length_error if `s.size() > max_size() - size()` */ template BOOST_STATIC_STRING_CPP14_CONSTEXPR @@ -2140,10 +2150,12 @@ public: Appends the contents of `s.substr(pos, count)` The appended string can contain null characters. + + @return `*this` @throw std::out_of_range if `pos > s.size()` + @throw std::length_error if `s.substr(pos, count).size() > max_size() - size()` - @return `*this` */ template BOOST_STATIC_STRING_CPP14_CONSTEXPR @@ -2162,8 +2174,9 @@ public: The appended string can contain null characters. - @throw std::length_error if `count > max_size() - size()` @return `*this` + + @throw std::length_error if `count > max_size() - size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -2178,8 +2191,9 @@ public: The length of the string is determined by the first null character using `traits_type::length(s)`. - @throw std::length_error if `traits_type::length(s) > max_size() - size()` @return `*this` + + @throw std::length_error if `traits_type::length(s) > max_size() - size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -2196,8 +2210,9 @@ public: This function does not participate in overload resolution if `InputIterator` does not satisfy LegacyInputIterator - @throw std::length_error if `std::distance(first, last) > max_size() - size()` @return `*this` + + @throw std::length_error if `std::distance(first, last) > max_size() - size()` */ template BOOST_STATIC_STRING_CPP14_CONSTEXPR @@ -2222,8 +2237,9 @@ public: The appended string can contain null characters. - @throw std::length_error if `ilist.size() > max_size() - size()` @return `*this` + + @throw std::length_error if `ilist.size() > max_size() - size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -2242,8 +2258,9 @@ public: `T` is convertible to `string_view_type` and `T` is not convertible to `const_pointer`. - @throw std::length_error if `string_view_type{t}.size() > max_size() - size()` @return `*this` + + @throw std::length_error if `string_view_type{t}.size() > max_size() - size()` */ template string_view_type{t}.size()` - @throw std::length_error if `string_view_type{t}.substr(pos, count).size() > max_size() - size()` @return `*this` + + @throw std::out_of_range if `pos > string_view_type{t}.size()` + + @throw std::length_error if `string_view_type{t}.substr(pos, count).size() > max_size() - size()` */ template max_size() - size()` @return `*this` + + @throw std::length_error if `traits_type::length(s) > max_size() - size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -2337,8 +2357,9 @@ public: The appended string can contain null characters. - @throw std::length_error if `ilist.size() > max_size() - size()` @return `*this` + + @throw std::length_error if `ilist.size() > max_size() - size()` */ BOOST_STATIC_STRING_CPP14_CONSTEXPR basic_static_string& @@ -2387,7 +2408,7 @@ public: /** Compare the string with another. - Compares a `[pos1, pos1+count1)` substring of this string to `s`. If `count1 > size() - pos1` the substring is `[pos1, size())`. + Compares a `{pos1, pos1+count1)` substring of this string to `s`. If `count1 > size() - pos1` the substring is `{pos1, size())`. */ template BOOST_STATIC_STRING_CPP14_CONSTEXPR @@ -2403,9 +2424,9 @@ public: /** Compare the string with another. - Compares a `[pos1, pos1+count1)` substring of this string to a substring `[pos2, pos2+count2)` of `s`. - If `count1 > size() - pos1` the first substring is `[pos1, size())`. Likewise, if `count2 > s.size() - pos2` the - second substring is `[pos2, s.size())`. + Compares a `{pos1, pos1+count1)` substring of this string to a substring `{pos2, pos2+count2)` of `s`. + If `count1 > size() - pos1` the first substring is `{pos1, size())`. Likewise, if `count2 > s.size() - pos2` the + second substring is `{pos2, s.size())`. */ template BOOST_STATIC_STRING_CPP14_CONSTEXPR @@ -2436,8 +2457,8 @@ public: /** Compare the string with another. - Compares a `[pos1, pos1+count1)` substring of this string to the null-terminated character sequence beginning at the character pointed to by `s` with - length `traits_type::length(s)`. If `count1 > size() - pos1` the substring is `[pos1, size())`. + Compares a `{pos1, pos1+count1)` substring of this string to the null-terminated character sequence beginning at the character pointed to by `s` with + length `traits_type::length(s)`. If `count1 > size() - pos1` the substring is `{pos1, size())`. */ BOOST_STATIC_STRING_CPP14_CONSTEXPR int @@ -2452,7 +2473,7 @@ public: /** Compare the string with another. - Compares a `[pos1, pos1+count1)` substring of this string to the characters in the range `[s, s + count2)`. If `count1 > size() - pos1` the substring is `[pos1, size())`. + Compares a `{pos1, pos1+count1)` substring of this string to the characters in the range `{s, s + count2)`. If `count1 > size() - pos1` the substring is `{pos1, size())`. */ BOOST_STATIC_STRING_CPP14_CONSTEXPR int @@ -2490,9 +2511,9 @@ public: /** Compare the string with another. - Compares a `[pos1, pos1+count1)` substring of this string to `t` after converting it to + Compares a `{pos1, pos1+count1)` substring of this string to `t` after converting it to `string_view_type`. If `count1 > size() - pos1` - the substring is `[pos1, size())`. + the substring is `{pos1, size())`. This function participates in overload resolution if `T` is convertible to `string_view_type` and `T` is not @@ -2517,7 +2538,7 @@ public: /** Compare the string with another. - Replaces the part of the string indicated by `[pos1, pos1 + count1)` with a substring `[pos2, pos2 + count2)` of `t` after converting to `string_view_type`. + Replaces the part of the string indicated by `{pos1, pos1 + count1)` with a substring `{pos2, pos2 + count2)` of `t` after converting to `string_view_type`. This function participates in overload resolution if `T` is convertible to `string_view_type` and `T` is not @@ -2551,7 +2572,7 @@ public: Strong guarantee. @return A string object containing the characters - `[data() + pos, std::min(count, size() - pos))`. + `{data() + pos, std::min(count, size() - pos))`. @param pos The index to being the substring at. The default arugment for this parameter is `0`. @@ -2578,7 +2599,7 @@ public: Strong guarantee. @return A `string_view_type` object referring - to `[data() + pos, std::min(count, size() - pos))`. + to `{data() + pos, std::min(count, size() - pos))`. @param pos The index to being the substring at. The default arugment for this parameter is `0`. @@ -2880,7 +2901,7 @@ public: /** Replace a substring with a string. Replaces `rcount` characters starting at index `pos` with those of - `[s, s + n2)`, where `rcount` is `std::min(n1, size() - pos)`. + `{s, s + n2)`, where `rcount` is `std::min(n1, size() - pos)`. @par Exception Safety @@ -2914,7 +2935,7 @@ public: /** Replace a substring with a string. Replaces `rcount` characters starting at index `pos` with those of - `[s, s + len)`, where the length of the string `len` is `traits_type::length(s)` and `rcount` + `{s, s + len)`, where the length of the string `len` is `traits_type::length(s)` and `rcount` is `std::min(n1, size() - pos)`. @par Exception Safety @@ -2980,12 +3001,12 @@ public: /** Replace a range with a string. - Replaces the characters in the range `[i1, i2)` + Replaces the characters in the range `{i1, i2)` with those of `str`. @par Precondition - `[i1, i2)` is a valid range. + `{i1, i2)` is a valid range. @par Exception Safety @@ -3036,12 +3057,12 @@ public: /** Replace a range with an object convertible to `string_view_type`. Constructs a temporary `string_view_type` object `sv` from `t`, and - replaces the characters in the range `[i1, i2)` with those + replaces the characters in the range `{i1, i2)` with those of `sv`. @par Precondition - `[i1, i2)` is a valid range. + `{i1, i2)` is a valid range. @par Exception Safety @@ -3085,12 +3106,12 @@ public: /** Replace a range with a string. - Replaces the characters in the range `[i1, i2)` with those of - `[s, s + n)`. + Replaces the characters in the range `{i1, i2)` with those of + `{s, s + n)`. @par Precondition - `[i1, i2)` is a valid range. + `{i1, i2)` is a valid range. @par Exception Safety @@ -3123,12 +3144,12 @@ public: /** Replace a range with a string. - Replaces the characters in the range `[i1, i2)` with those of - `[s, s + len)`, where the length of the string `len` is `traits_type::length(s)`. + Replaces the characters in the range `{i1, i2)` with those of + `{s, s + len)`, where the length of the string `len` is `traits_type::length(s)`. @par Precondition - `[i1, i2)` shall be a valid range. + `{i1, i2)` shall be a valid range. @par Exception Safety @@ -3159,12 +3180,12 @@ public: /** Replace a range with copies of a character. - Replaces the characters in the range `[i1, i2)` with + Replaces the characters in the range `{i1, i2)` with `n` copies of `c`. @par Precondition - `[i1, i2)` is a valid range. + `{i1, i2)` is a valid range. @par Exception Safety @@ -3194,14 +3215,14 @@ public: /** Replace a range with a range. - Replaces the characters in the range `[i1, i2)` - with those of `[j1, j2)`. + Replaces the characters in the range `{i1, i2)` + with those of `{j1, j2)`. @par Precondition - `[i1, i2)` is a valid range. + `{i1, i2)` is a valid range. - `[j1, j2)` is a valid range. + `{j1, j2)` is a valid range. @par Exception Safety @@ -3263,12 +3284,12 @@ public: /** Replace a range with an initializer list. - Replaces the characters in the range `[i1, i2)` + Replaces the characters in the range `{i1, i2)` with those of contained in the initializer list `il`. @par Precondition - `[i1, i2)` is a valid range. + `{i1, i2)` is a valid range. @par Exception Safety @@ -3322,8 +3343,8 @@ public: !std::is_convertible::value`. @return The lowest index `idx` greater than or equal to `pos` - where each element of `[sv.begin(), sv.end())` is equal to - that of `[begin() + idx, begin() + idx + count)` if one exists, + where each element of `{sv.begin(), sv.end())` is equal to + that of `{begin() + idx, begin() + idx + count)` if one exists, and @ref npos otherwise. @param t The string to search for. @@ -3357,7 +3378,7 @@ public: @return The lowest index `idx` greater than or equal to `pos` where each element of `str` is equal to that of - `[begin() + idx, begin() + idx + str.size())` + `{begin() + idx, begin() + idx + str.size())` if one exists, and @ref npos otherwise. @param str The string to search for. @@ -3386,8 +3407,8 @@ public: @note An empty string is always found. @return The lowest index `idx` greater than or equal to `pos` - where each element of `[s, s + n)` is equal to that of - `[begin() + idx, begin() + idx + n)` if one exists, + where each element of `{s, s + n)` is equal to that of + `{begin() + idx, begin() + idx + n)` if one exists, and @ref npos otherwise. @param s The string to search for. @@ -3414,8 +3435,8 @@ public: @note An empty string is always found. @return The lowest index `idx` greater than or equal to `pos` - where each element of `[s, s + count)` is equal to that of - `[begin() + idx, begin() + idx + count)` if one exists, + where each element of `{s, s + count)` is equal to that of + `{begin() + idx, begin() + idx + count)` if one exists, and @ref npos otherwise. @param s The string to search for. @@ -3441,7 +3462,7 @@ public: Linear. @return The index corrosponding to the first occurrence of `c` within - `[begin() + pos, end())` if it exists, and @ref npos otherwise. + `{begin() + pos, end())` if it exists, and @ref npos otherwise. @param c The character to search for. @param pos The index to start searching at. The default argument @@ -3475,8 +3496,8 @@ public: !std::is_convertible::value`. @return The highest index `idx` less than or equal to `pos` - where each element of `[sv.begin(), sv.end())` is equal to - that of `[begin() + idx, begin() + idx + count)` if one exists, + where each element of `{sv.begin(), sv.end())` is equal to + that of `{begin() + idx, begin() + idx + count)` if one exists, and @ref npos otherwise. @param t The string to search for. @@ -3510,7 +3531,7 @@ public: @return The highest index `idx` less than or equal to `pos` where each element of `str` is equal to that - of `[begin() + idx, begin() + idx + str.size())` + of `{begin() + idx, begin() + idx + str.size())` if one exists, and @ref npos otherwise. @param str The string to search for. @@ -3538,8 +3559,8 @@ public: Linear. @return The highest index `idx` less than or equal to `pos` - where each element of `[s, s + n)` is equal to that of - `[begin() + idx, begin() + idx + n)` if one exists, + where each element of `{s, s + n)` is equal to that of + `{begin() + idx, begin() + idx + n)` if one exists, and @ref npos otherwise. @param s The string to search for. @@ -3564,8 +3585,8 @@ public: Linear. @return The highest index `idx` less than or equal to `pos` - where each element of `[s, s + count)` is equal to that of - `[begin() + idx, begin() + idx + count)` if one exists, + where each element of `{s, s + count)` is equal to that of + `{begin() + idx, begin() + idx + count)` if one exists, and @ref npos otherwise. @param s The string to search for. @@ -3591,7 +3612,7 @@ public: Linear. @return The index corrosponding to the last occurrence of `c` within - `[begin(), begin() + pos]` if it exists, and @ref npos otherwise. + `{begin(), begin() + pos}` if it exists, and @ref npos otherwise. @param c The character to search for. @param pos The index to stop searching at. The default argument @@ -3624,8 +3645,8 @@ public: !std::is_convertible::value`. @return The index corrosponding to the first occurrence of - any of the characters in `[sv.begin(), sv.end())` within - `[begin() + pos, end())` if it exists, and @ref npos otherwise. + any of the characters in `{sv.begin(), sv.end())` within + `{begin() + pos, end())` if it exists, and @ref npos otherwise. @param t The characters to search for. @param pos The index to start searching at. The default argument @@ -3657,7 +3678,7 @@ public: Linear. @return The index corrosponding to the first occurrence of any of the characters - of `str` within `[begin() + pos, end())` if it exists, and @ref npos otherwise. + of `str` within `{begin() + pos, end())` if it exists, and @ref npos otherwise. @param str The characters to search for. @param pos The index to start searching at. The default argument for @@ -3683,7 +3704,7 @@ public: Linear. @return The index corrosponding to the first occurrence - of any of the characters in `[s, s + n)` within `[begin() + pos, end())` + of any of the characters in `{s, s + n)` within `{begin() + pos, end())` if it exists, and @ref npos otherwise. @param s The characters to search for. @@ -3708,8 +3729,8 @@ public: Linear. @return The index corrosponding to the first occurrence of any of - the characters in `[s, s + count)` within - `[begin() + pos, end())` if it exists, and @ref npos otherwise. + the characters in `{s, s + count)` within + `{begin() + pos, end())` if it exists, and @ref npos otherwise. @param s The characters to search for. @param pos The index to start searching at. The default argument @@ -3734,7 +3755,7 @@ public: Linear. @return The index corrosponding to the first occurrence of `c` within - `[begin() + pos, end())` if it exists, and @ref npos otherwise. + `{begin() + pos, end())` if it exists, and @ref npos otherwise. @param c The character to search for. @param pos The index to start searching at. The default argument @@ -3767,8 +3788,8 @@ public: !std::is_convertible::value`. @return The index corrosponding to the last occurrence of - any of the characters in `[sv.begin(), sv.end())` within - `[begin(), begin() + pos]` if it exists, and @ref npos otherwise. + any of the characters in `{sv.begin(), sv.end())` within + `{begin(), begin() + pos}` if it exists, and @ref npos otherwise. @param t The characters to search for. @param pos The index to stop searching at. The default argument @@ -3800,7 +3821,7 @@ public: Linear. @return The index corrosponding to the last occurrence of any of the characters - of `str` within `[begin(), begin() + pos]` if it exists, and @ref npos otherwise. + of `str` within `{begin(), begin() + pos}` if it exists, and @ref npos otherwise. @param str The characters to search for. @param pos The index to stop searching at. The default argument for @@ -3826,7 +3847,7 @@ public: Linear. @return The index corrosponding to the last occurrence - of any of the characters in `[s, s + n)` within `[begin(), begin() + pos]` + of any of the characters in `{s, s + n)` within `{begin(), begin() + pos}` if it exists, and @ref npos otherwise. @param s The characters to search for. @@ -3851,7 +3872,7 @@ public: Linear. @return The index corrosponding to the last occurrence - of any of the characters in `[s, s + count)` within `[begin(), begin() + pos]` + of any of the characters in `{s, s + count)` within `{begin(), begin() + pos}` if it exists, and @ref npos otherwise. @param s The characters to search for. @@ -3877,7 +3898,7 @@ public: Linear. @return The index corrosponding to the last occurrence of `c` within - `[begin(), begin() + pos]` if it exists, and @ref npos otherwise. + `{begin(), begin() + pos}` if it exists, and @ref npos otherwise. @param c The character to search for. @param pos The index to stop searching at. The default argument @@ -3909,8 +3930,8 @@ public: !std::is_convertible::value`. @return The index corrosponding to the first occurrence of - a character that is not in `[sv.begin(), sv.end())` within - `[begin() + pos, end())` if it exists, and @ref npos otherwise. + a character that is not in `{sv.begin(), sv.end())` within + `{begin() + pos, end())` if it exists, and @ref npos otherwise. @param t The characters to ignore. @param pos The index to start searching at. The default argument @@ -3941,7 +3962,7 @@ public: Linear. - @return The index corrosponding to the first character of `[begin() + pos, end())` + @return The index corrosponding to the first character of `{begin() + pos, end())` that is not within `str` if it exists, and @ref npos otherwise. @param str The characters to ignore. @@ -3967,8 +3988,8 @@ public: Linear. - @return The index corrosponding to the first character of `[begin() + pos, end())` - that is not within `[s, s + n)` if it exists, and @ref npos otherwise. + @return The index corrosponding to the first character of `{begin() + pos, end())` + that is not within `{s, s + n)` if it exists, and @ref npos otherwise. @param s The characters to ignore. @param pos The index to start searching at. The default argument for @@ -3992,8 +4013,8 @@ public: Linear. - @return The index corrosponding to the first character of `[begin() + pos, end())` - that is not within `[s, s + count)` if it exists, and @ref npos otherwise. + @return The index corrosponding to the first character of `{begin() + pos, end())` + that is not within `{s, s + count)` if it exists, and @ref npos otherwise. @param s The characters to ignore. @param pos The index to start searching at. The default argument for @@ -4017,7 +4038,7 @@ public: Linear. - @return The index corrosponding to the first character of `[begin() + pos, end())` + @return The index corrosponding to the first character of `{begin() + pos, end())` that is not equal to `c` if it exists, and @ref npos otherwise. @param c The character to ignore. @@ -4050,8 +4071,8 @@ public: !std::is_convertible::value`. @return The index corrosponding to the last occurrence of - a character that is not in `[sv.begin(), sv.end())` within - `[begin(), begin() + pos]` if it exists, and @ref npos otherwise. + a character that is not in `{sv.begin(), sv.end())` within + `{begin(), begin() + pos}` if it exists, and @ref npos otherwise. @param t The characters to ignore. @param pos The index to start searching at. The default argument @@ -4082,7 +4103,7 @@ public: Linear. - @return The index corrosponding to the last character of `[begin(), begin() + pos]` + @return The index corrosponding to the last character of `{begin(), begin() + pos}` that is not within `str` if it exists, and @ref npos otherwise. @param str The characters to ignore. @@ -4108,8 +4129,8 @@ public: Linear. - @return The index corrosponding to the last character of `[begin(), begin() + pos]` - that is not within `[s, s + n)` if it exists, and @ref npos otherwise. + @return The index corrosponding to the last character of `{begin(), begin() + pos}` + that is not within `{s, s + n)` if it exists, and @ref npos otherwise. @param s The characters to ignore. @param pos The index to stop searching at. The default argument for @@ -4134,8 +4155,8 @@ public: Linear. - @return The index corrosponding to the last character of `[begin(), begin() + pos]` - that is not within `[s, s + count)` if it exists, and @ref npos otherwise. + @return The index corrosponding to the last character of `{begin(), begin() + pos}` + that is not within `{s, s + count)` if it exists, and @ref npos otherwise. @param s The characters to ignore. @param pos The index to stop searching at. The default argument for @@ -4159,7 +4180,7 @@ public: Linear. - @return The index corrosponding to the last character of `[begin(), begin() + pos]` + @return The index corrosponding to the last character of `{begin(), begin() + pos}` that is not equal to `c` if it exists, and @ref npos otherwise. @param c The character to ignore.