Fix documentation of QStringTokenizer

Documentation of QStringTokenizer was broken, mainly because most
parts of the interface were defined in base classes. This patch
gets those members into QStringTokenizer itself in order to document
them.

Task-number: QTBUG-88533
Pick-to: 6.0
Change-Id: Id00a79db4b293958a9c5ed53a518a97721d228c0
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
This commit is contained in:
Andreas Buhr 2020-12-03 14:02:58 +01:00 committed by Andreas Buhr
parent d7828a5ed3
commit 604a8c7acc
2 changed files with 28 additions and 12 deletions

View File

@ -147,26 +147,26 @@ QT_BEGIN_NAMESPACE
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::value_type
\typealias QStringTokenizer::value_type
Alias for \c{const QStringView} or \c{const QLatin1String},
depending on the tokenizer's \c Haystack template argument.
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::difference_type
\typealias QStringTokenizer::difference_type
Alias for qsizetype.
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::size_type
\typealias QStringTokenizer::size_type
Alias for qsizetype.
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::reference
\typealias QStringTokenizer::reference
Alias for \c{value_type &}.
@ -175,13 +175,13 @@ QT_BEGIN_NAMESPACE
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::const_reference
\typealias QStringTokenizer::const_reference
Alias for \c{value_type &}.
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::pointer
\typealias QStringTokenizer::pointer
Alias for \c{value_type *}.
@ -190,13 +190,13 @@ QT_BEGIN_NAMESPACE
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::const_pointer
\typealias QStringTokenizer::const_pointer
Alias for \c{value_type *}.
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::iterator
\typealias QStringTokenizer::iterator
This typedef provides an STL-style const iterator for
QStringTokenizer.
@ -208,7 +208,7 @@ QT_BEGIN_NAMESPACE
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::const_iterator
\typedef QStringTokenizer::const_iterator
This typedef provides an STL-style const iterator for
QStringTokenizer.
@ -217,7 +217,7 @@ QT_BEGIN_NAMESPACE
*/
/*!
\typedef template <typename Haystack, typename Needle> QStringTokenizer<Haystack, Needle>::sentinel
\typealias QStringTokenizer::sentinel
This typedef provides an STL-style sentinel for
QStringTokenizer::iterator and QStringTokenizer::const_iterator.
@ -251,7 +251,7 @@ QT_BEGIN_NAMESPACE
Returns a const \l{STL-style iterators}{STL-style iterator}
pointing to the first token in the list.
\sa end(), cbegin()
\sa end(), cend()
*/
/*!

View File

@ -301,7 +301,23 @@ class QStringTokenizer
bool
>::type;
public:
using value_type = typename Base::value_type;
using value_type = typename Base::value_type;
using difference_type = typename Base::difference_type;
using size_type = typename Base::size_type;
using reference = typename Base::reference;
using const_reference = typename Base::const_reference;
using pointer = typename Base::pointer;
using const_pointer = typename Base::const_pointer;
using iterator = typename Base::iterator;
using const_iterator = typename Base::const_iterator;
using sentinel = typename Base::sentinel;
#ifdef Q_QDOC
[[nodiscard]] iterator begin() const noexcept { return Base::begin(); }
[[nodiscard]] iterator cbegin() const noexcept { return begin(); }
[[nodiscard]] constexpr sentinel end() const noexcept { return {}; }
[[nodiscard]] constexpr sentinel cend() const noexcept { return {}; }
#endif
constexpr explicit QStringTokenizer(Haystack haystack, Needle needle,
Qt::CaseSensitivity cs,