Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
134 changes: 67 additions & 67 deletions source/text.tex
Original file line number Diff line number Diff line change
Expand Up @@ -11217,76 +11217,76 @@
namespace std {
template<class BidirectionalIterator,
class Allocator = allocator<sub_match<BidirectionalIterator>>>
class match_results {
public:
using value_type = sub_match<BidirectionalIterator>;
using const_reference = const value_type&;
using reference = value_type&;
using const_iterator = @\impdefx{type of \tcode{match_results::const_iterator}}@;
using iterator = const_iterator;
using difference_type = iterator_traits<BidirectionalIterator>::difference_type;
using size_type = allocator_traits<Allocator>::size_type;
using allocator_type = Allocator;
using char_type = iterator_traits<BidirectionalIterator>::value_type;
using string_type = basic_string<char_type>;

// \ref{re.results.const}, construct/copy/destroy
match_results() : match_results(Allocator()) {}
explicit match_results(const Allocator& a);
match_results(const match_results& m);
match_results(const match_results& m, const Allocator& a);
match_results(match_results&& m) noexcept;
match_results(match_results&& m, const Allocator& a);
match_results& operator=(const match_results& m);
match_results& operator=(match_results&& m);
~match_results();

// \ref{re.results.state}, state
bool ready() const;

// \ref{re.results.size}, size
size_type size() const;
size_type max_size() const;
bool empty() const;

// \ref{re.results.acc}, element access
difference_type length(size_type sub = 0) const;
difference_type position(size_type sub = 0) const;
string_type str(size_type sub = 0) const;
const_reference operator[](size_type n) const;

const_reference prefix() const;
const_reference suffix() const;
const_iterator begin() const;
const_iterator end() const;
const_iterator cbegin() const;
const_iterator cend() const;

// \ref{re.results.form}, format
template<class OutputIter>
OutputIter
format(OutputIter out,
const char_type* fmt_first, const char_type* fmt_last,
regex_constants::match_flag_type flags = regex_constants::format_default) const;
template<class OutputIter, class ST, class SA>
OutputIter
format(OutputIter out,
const basic_string<char_type, ST, SA>& fmt,
regex_constants::match_flag_type flags = regex_constants::format_default) const;
template<class ST, class SA>
basic_string<char_type, ST, SA>
format(const basic_string<char_type, ST, SA>& fmt,
regex_constants::match_flag_type flags = regex_constants::format_default) const;
string_type
format(const char_type* fmt,
class match_results {
public:
using value_type = sub_match<BidirectionalIterator>;
using const_reference = const value_type&;
using reference = value_type&;
using const_iterator = @\impdefx{type of \tcode{match_results::const_iterator}}@;
using iterator = const_iterator;
using difference_type = iterator_traits<BidirectionalIterator>::difference_type;
using size_type = allocator_traits<Allocator>::size_type;
using allocator_type = Allocator;
using char_type = iterator_traits<BidirectionalIterator>::value_type;
using string_type = basic_string<char_type>;

// \ref{re.results.const}, construct/copy/destroy
match_results() : match_results(Allocator()) {}
explicit match_results(const Allocator& a);
match_results(const match_results& m);
match_results(const match_results& m, const Allocator& a);
match_results(match_results&& m) noexcept;
match_results(match_results&& m, const Allocator& a);
match_results& operator=(const match_results& m);
match_results& operator=(match_results&& m);
~match_results();

// \ref{re.results.state}, state
bool ready() const;

// \ref{re.results.size}, size
size_type size() const;
size_type max_size() const;
bool empty() const;

// \ref{re.results.acc}, element access
difference_type length(size_type sub = 0) const;
difference_type position(size_type sub = 0) const;
string_type str(size_type sub = 0) const;
const_reference operator[](size_type n) const;

const_reference prefix() const;
const_reference suffix() const;
const_iterator begin() const;
const_iterator end() const;
const_iterator cbegin() const;
const_iterator cend() const;

// \ref{re.results.form}, format
template<class OutputIter>
OutputIter
format(OutputIter out,
const char_type* fmt_first, const char_type* fmt_last,
regex_constants::match_flag_type flags = regex_constants::format_default) const;
template<class OutputIter, class ST, class SA>
OutputIter
format(OutputIter out,
const basic_string<char_type, ST, SA>& fmt,
regex_constants::match_flag_type flags = regex_constants::format_default) const;
template<class ST, class SA>
basic_string<char_type, ST, SA>
format(const basic_string<char_type, ST, SA>& fmt,
regex_constants::match_flag_type flags = regex_constants::format_default) const;
string_type
format(const char_type* fmt,
regex_constants::match_flag_type flags = regex_constants::format_default) const;

// \ref{re.results.all}, allocator
allocator_type get_allocator() const;
// \ref{re.results.all}, allocator
allocator_type get_allocator() const;

// \ref{re.results.swap}, swap
void swap(match_results& that);
};
// \ref{re.results.swap}, swap
void swap(match_results& that);
};
}
\end{codeblock}

Expand Down