|
21202 | 21202 |
|
21203 | 21203 | \begin{codeblock}
|
21204 | 21204 | namespace std {
|
21205 |
| - class stacktrace_entry { |
| 21205 | + class @\libglobal{stacktrace_entry}@ { |
21206 | 21206 | public:
|
21207 | 21207 | using native_handle_type = @\impldef{\tcode{stacktrace_entry::native_handle_type}}@;
|
21208 | 21208 |
|
|
21241 | 21241 |
|
21242 | 21242 | \rSec3[stacktrace.entry.ctor]{Constructors}
|
21243 | 21243 |
|
| 21244 | +\indexlibraryctor{stacktrace_entry}% |
21244 | 21245 | \begin{itemdecl}
|
21245 | 21246 | constexpr stacktrace_entry() noexcept;
|
21246 | 21247 | \end{itemdecl}
|
|
21253 | 21254 |
|
21254 | 21255 | \rSec3[stacktrace.entry.obs]{Observers}
|
21255 | 21256 |
|
| 21257 | +\indexlibrarymember{native_handle}{stacktrace_entry}% |
21256 | 21258 | \begin{itemdecl}
|
21257 | 21259 | constexpr native_handle_type native_handle() const noexcept;
|
21258 | 21260 | \end{itemdecl}
|
|
21268 | 21270 | for an unchanged \tcode{stacktrace_entry} object return identical values.
|
21269 | 21271 | \end{itemdescr}
|
21270 | 21272 |
|
| 21273 | +\indexlibrarymember{operator bool}{stacktrace_entry}% |
21271 | 21274 | \begin{itemdecl}
|
21272 | 21275 | constexpr explicit operator bool() const noexcept;
|
21273 | 21276 | \end{itemdecl}
|
|
21287 | 21290 | as ``no information available'' and do not throw in that case.
|
21288 | 21291 | \end{note}
|
21289 | 21292 |
|
| 21293 | +\indexlibrarymember{description}{stacktrace_entry}% |
21290 | 21294 | \begin{itemdecl}
|
21291 | 21295 | string description() const;
|
21292 | 21296 | \end{itemdecl}
|
|
21303 | 21307 | the internal data structures or the resulting string cannot be allocated.
|
21304 | 21308 | \end{itemdescr}
|
21305 | 21309 |
|
| 21310 | +\indexlibrarymember{source_file}{stacktrace_entry}% |
21306 | 21311 | \begin{itemdecl}
|
21307 | 21312 | string source_file() const;
|
21308 | 21313 | \end{itemdecl}
|
|
21320 | 21325 | the internal data structures or the resulting string cannot be allocated.
|
21321 | 21326 | \end{itemdescr}
|
21322 | 21327 |
|
| 21328 | +\indexlibrarymember{source_line}{stacktrace_entry}% |
21323 | 21329 | \begin{itemdecl}
|
21324 | 21330 | uint_least32_t source_line() const;
|
21325 | 21331 | \end{itemdecl}
|
|
21342 | 21348 |
|
21343 | 21349 | \rSec3[stacktrace.entry.cmp]{Comparison}
|
21344 | 21350 |
|
| 21351 | +\indexlibrarymember{operator==}{stacktrace_entry}% |
21345 | 21352 | \begin{itemdecl}
|
21346 | 21353 | friend constexpr bool operator==(const stacktrace_entry& x, const stacktrace_entry& y) noexcept;
|
21347 | 21354 | \end{itemdecl}
|
|
21359 | 21366 |
|
21360 | 21367 | \begin{codeblock}
|
21361 | 21368 | template<class Allocator>
|
21362 |
| - class basic_stacktrace { |
| 21369 | + class @\libglobal{basic_stacktrace}@ { |
21363 | 21370 | public:
|
21364 | 21371 | using value_type = stacktrace_entry;
|
21365 | 21372 | using const_reference = const value_type&;
|
|
21452 | 21459 |
|
21453 | 21460 | \rSec3[stacktrace.basic.ctor]{Creation and assignment}
|
21454 | 21461 |
|
| 21462 | +\indexlibrarymember{current}{basic_stacktrace}% |
21455 | 21463 | \begin{itemdecl}
|
21456 | 21464 | static basic_stacktrace current(const allocator_type& alloc = allocator_type()) noexcept;
|
21457 | 21465 | \end{itemdecl}
|
|
21476 | 21484 | \end{note}
|
21477 | 21485 | \end{itemdescr}
|
21478 | 21486 |
|
| 21487 | +\indexlibrarymember{current}{basic_stacktrace}% |
21479 | 21488 | \begin{itemdecl}
|
21480 | 21489 | static basic_stacktrace current(size_type skip,
|
21481 | 21490 | const allocator_type& alloc = allocator_type()) noexcept;
|
|
21496 | 21505 | if the \tcode{frames_} initialization failed.
|
21497 | 21506 | \end{itemdescr}
|
21498 | 21507 |
|
| 21508 | +\indexlibrarymember{current}{basic_stacktrace}% |
21499 | 21509 | \begin{itemdecl}
|
21500 | 21510 | static basic_stacktrace current(size_type skip, size_type max_depth,
|
21501 | 21511 | const allocator_type& alloc = allocator_type()) noexcept;
|
|
21521 | 21531 | if the \tcode{frames_} initialization failed.
|
21522 | 21532 | \end{itemdescr}
|
21523 | 21533 |
|
| 21534 | +\indexlibraryctor{basic_stacktrace}% |
21524 | 21535 | \begin{itemdecl}
|
21525 | 21536 | basic_stacktrace() noexcept(is_nothrow_default_constructible_v<allocator_type>);
|
21526 | 21537 | \end{itemdecl}
|
|
21531 | 21542 | \tcode{empty()} is \tcode{true}.
|
21532 | 21543 | \end{itemdescr}
|
21533 | 21544 |
|
| 21545 | +\indexlibraryctor{basic_stacktrace}% |
21534 | 21546 | \begin{itemdecl}
|
21535 | 21547 | explicit basic_stacktrace(const allocator_type& alloc) noexcept;
|
21536 | 21548 | \end{itemdecl}
|
|
21545 | 21557 | \tcode{empty()} is \tcode{true}.
|
21546 | 21558 | \end{itemdescr}
|
21547 | 21559 |
|
| 21560 | +\indexlibraryctor{basic_stacktrace}% |
| 21561 | +\indexlibrarymember{operator=}{basic_stacktrace}% |
21548 | 21562 | \begin{itemdecl}
|
21549 | 21563 | basic_stacktrace(const basic_stacktrace& other);
|
21550 | 21564 | basic_stacktrace(const basic_stacktrace& other, const allocator_type& alloc);
|
|
21565 | 21579 |
|
21566 | 21580 | \rSec3[stacktrace.basic.obs]{Observers}
|
21567 | 21581 |
|
| 21582 | +\indexlibrarymember{const_iterator}{basic_stacktrace}% |
21568 | 21583 | \begin{itemdecl}
|
21569 | 21584 | using const_iterator = @\impdef@;
|
21570 | 21585 | \end{itemdecl}
|
|
21577 | 21592 | \oldconcept{RandomAccessIterator} requirements\iref{random.access.iterators}.
|
21578 | 21593 | \end{itemdescr}
|
21579 | 21594 |
|
| 21595 | +\indexlibrarymember{get_allocator}{basic_stacktrace}% |
21580 | 21596 | \begin{itemdecl}
|
21581 | 21597 | allocator_type get_allocator() const noexcept;
|
21582 | 21598 | \end{itemdecl}
|
|
21587 | 21603 | \tcode{frames_.get_allocator()}.
|
21588 | 21604 | \end{itemdescr}
|
21589 | 21605 |
|
| 21606 | +\indexlibrarymember{begin}{basic_stacktrace}% |
| 21607 | +\indexlibrarymember{cbegin}{basic_stacktrace}% |
21590 | 21608 | \begin{itemdecl}
|
21591 | 21609 | const_iterator begin() const noexcept;
|
21592 | 21610 | const_iterator cbegin() const noexcept;
|
|
21600 | 21618 | then it returns the same value as \tcode{end()}.
|
21601 | 21619 | \end{itemdescr}
|
21602 | 21620 |
|
| 21621 | +\indexlibrarymember{end}{basic_stacktrace}% |
| 21622 | +\indexlibrarymember{cend}{basic_stacktrace}% |
21603 | 21623 | \begin{itemdecl}
|
21604 | 21624 | const_iterator end() const noexcept;
|
21605 | 21625 | const_iterator cend() const noexcept;
|
|
21611 | 21631 | The end iterator.
|
21612 | 21632 | \end{itemdescr}
|
21613 | 21633 |
|
| 21634 | +\indexlibrarymember{rbegin}{basic_stacktrace}% |
| 21635 | +\indexlibrarymember{crbegin}{basic_stacktrace}% |
21614 | 21636 | \begin{itemdecl}
|
21615 | 21637 | const_reverse_iterator rbegin() const noexcept;
|
21616 | 21638 | const_reverse_iterator crbegin() const noexcept;
|
|
21622 | 21644 | \tcode{reverse_iterator(cend())}.
|
21623 | 21645 | \end{itemdescr}
|
21624 | 21646 |
|
| 21647 | +\indexlibrarymember{rend}{basic_stacktrace}% |
| 21648 | +\indexlibrarymember{crend}{basic_stacktrace}% |
21625 | 21649 | \begin{itemdecl}
|
21626 | 21650 | const_reverse_iterator rend() const noexcept;
|
21627 | 21651 | const_reverse_iterator crend() const noexcept;
|
|
21633 | 21657 | \tcode{reverse_iterator(cbegin())}.
|
21634 | 21658 | \end{itemdescr}
|
21635 | 21659 |
|
| 21660 | +\indexlibrarymember{empty}{basic_stacktrace}% |
21636 | 21661 | \begin{itemdecl}
|
21637 | 21662 | [[nodiscard]] bool empty() const noexcept;
|
21638 | 21663 | \end{itemdecl}
|
|
21643 | 21668 | \tcode{frames_.empty()}.
|
21644 | 21669 | \end{itemdescr}
|
21645 | 21670 |
|
| 21671 | +\indexlibrarymember{size}{basic_stacktrace}% |
21646 | 21672 | \begin{itemdecl}
|
21647 | 21673 | size_type size() const noexcept;
|
21648 | 21674 | \end{itemdecl}
|
|
21653 | 21679 | \tcode{frames_.size()}.
|
21654 | 21680 | \end{itemdescr}
|
21655 | 21681 |
|
| 21682 | +\indexlibrarymember{max_size}{basic_stacktrace}% |
21656 | 21683 | \begin{itemdecl}
|
21657 | 21684 | size_type max_size() const noexcept;
|
21658 | 21685 | \end{itemdecl}
|
|
21663 | 21690 | \tcode{frames_.max_size()}.
|
21664 | 21691 | \end{itemdescr}
|
21665 | 21692 |
|
| 21693 | +\indexlibrarymember{operator[]}{basic_stacktrace}% |
21666 | 21694 | \begin{itemdecl}
|
21667 | 21695 | const_reference operator[](size_type frame_no) const;
|
21668 | 21696 | \end{itemdecl}
|
|
21681 | 21709 | Nothing.
|
21682 | 21710 | \end{itemdescr}
|
21683 | 21711 |
|
| 21712 | +\indexlibrarymember{at}{basic_stacktrace}% |
21684 | 21713 | \begin{itemdecl}
|
21685 | 21714 | const_reference at(size_type frame_no) const;
|
21686 | 21715 | \end{itemdecl}
|
|
21697 | 21726 |
|
21698 | 21727 | \rSec3[stacktrace.basic.cmp]{Comparisons}
|
21699 | 21728 |
|
| 21729 | +\indexlibrarymember{operator==}{basic_stacktrace}% |
21700 | 21730 | \begin{itemdecl}
|
21701 | 21731 | template<class Allocator2>
|
21702 | 21732 | friend bool operator==(const basic_stacktrace& x, const basic_stacktrace<Allocator2>& y) noexcept;
|
|
21708 | 21738 | \tcode{equal(x.begin(), x.end(), y.begin(), y.end())}
|
21709 | 21739 | \end{itemdescr}
|
21710 | 21740 |
|
| 21741 | +\indexlibrarymember{operator<=>}{basic_stacktrace}% |
21711 | 21742 | \begin{itemdecl}
|
21712 | 21743 | template<class Allocator2>
|
21713 | 21744 | friend strong_ordering
|
|
21725 | 21756 |
|
21726 | 21757 | \rSec3[stacktrace.basic.mod]{Modifiers}
|
21727 | 21758 |
|
| 21759 | +\indexlibrarymember{swap}{basic_stacktrace}% |
21728 | 21760 | \begin{itemdecl}
|
21729 | 21761 | void swap(basic_stacktrace& other)
|
21730 | 21762 | noexcept(allocator_traits<Allocator>::propagate_on_container_swap::value ||
|
|
21739 | 21771 |
|
21740 | 21772 | \rSec3[stacktrace.basic.nonmem]{Non-member functions}
|
21741 | 21773 |
|
| 21774 | +\indexlibrarymember{swap}{basic_stacktrace}% |
21742 | 21775 | \begin{itemdecl}
|
21743 | 21776 | template<class Allocator>
|
21744 | 21777 | void swap(basic_stacktrace<Allocator>& a, basic_stacktrace<Allocator>& b)
|
|
21751 | 21784 | Equivalent to \tcode{a.swap(b)}.
|
21752 | 21785 | \end{itemdescr}
|
21753 | 21786 |
|
| 21787 | +\indexlibrarymember{to_string}{basic_stacktrace}% |
21754 | 21788 | \begin{itemdecl}
|
21755 | 21789 | string to_string(const stacktrace_entry& f);
|
21756 | 21790 | \end{itemdecl}
|
|
21766 | 21800 | \tcode{f.source_file()} and \tcode{f.source_line()}.
|
21767 | 21801 | \end{itemdescr}
|
21768 | 21802 |
|
| 21803 | +\indexlibrarymember{to_string}{basic_stacktrace}% |
21769 | 21804 | \begin{itemdecl}
|
21770 | 21805 | template<class Allocator>
|
21771 | 21806 | string to_string(const basic_stacktrace<Allocator>& st);
|
|
21780 | 21815 | \end{note}
|
21781 | 21816 | \end{itemdescr}
|
21782 | 21817 |
|
| 21818 | +\indexlibrarymember{operator<<}{basic_stacktrace}% |
21783 | 21819 | \begin{itemdecl}
|
21784 | 21820 | template<class charT, class traits>
|
21785 | 21821 | basic_ostream<charT, traits>&
|
|
0 commit comments