32 Regular expressions library [re]

32.9 Class template match_results [re.results]

32.9.2 Constructors [re.results.const]

Table 141 lists the postconditions of match_results copy/move constructors and copy/move assignment operators.
For move operations, the results of the expressions depending on the parameter m denote the values they had before the respective function calls.
explicit match_results(const Allocator& a);
Effects: The stored Allocator value is constructed from a.
Postconditions: ready() returns false.
size() returns 0.
match_results(const match_results& m); match_results(const match_results& m, const Allocator& a);
Effects: For the first form, the stored Allocator value is obtained as specified in [container.reqmts].
For the second form, the stored Allocator value is constructed from a.
Postconditions: As specified in Table 141.
match_results(match_results&& m) noexcept; match_results(match_results&& m, const Allocator& a);
Effects: For the first form, the stored Allocator value is move constructed from m.get_allocator().
For the second form, the stored Allocator value is constructed from a.
Postconditions: As specified in Table 141.
Throws: The second form throws nothing if a == m.get_allocator() is true.
match_results& operator=(const match_results& m);
Postconditions: As specified in Table 141.
match_results& operator=(match_results&& m);
Postconditions: As specified in Table 141.
Table 141: match_results copy/move operation postconditions [tab:re.results.const]
Element
Value
ready()
m.ready()
size()
m.size()
str(n)
m.str(n) for all non-negative integers n < m.size()
prefix()
m.prefix()
suffix()
m.suffix()
(*this)[n]
m[n] for all non-negative integers n < m.size()
length(n)
m.length(n) for all non-negative integers n < m.size()
position(n)
m.position(n) for all non-negative integers n < m.size()