std::basic_stacktrace<Allocator>::current
From cppreference.com
< cpp | utility | basic stacktrace
| static basic_stacktrace current( const allocator_type& alloc = allocator_type() ) noexcept; |
(1) | (since C++23) |
| static basic_stacktrace current( size_type skip, const allocator_type& alloc = allocator_type() ) noexcept; |
(2) | (since C++23) |
| static basic_stacktrace current( size_type skip, size_type max_depth, const allocator_type& alloc = |
(3) | (since C++23) |
Let s[i] (0 ≤ i < n) denote the (i+1)-th stacktrace entry in the stacktrace of the current evaluation in the current thread of execution, where n is the count of the stacktrace entries in the stackentry.
1) Attempts to create a
basic_stacktrace consisting of s[0], s[1], ..., s[n - 1].2) Attempts to create a
basic_stacktrace consisting of s[m], s[m + 1], ..., s[n - 1], where m is min(skip, n).3) Attempts to create a
basic_stacktrace consisting of s[m], s[m + 1], ..., s[o - 1], where m is min(skip, n) and o is min(skip + max_depth, n). The behavior is undefined if the skip + max_depth < skip (i.e. the mathematical result of skip + max_depth overflows).In all cases, alloc is stored into the created basic_stacktrace and used to allocate the storage for stacktrace entries.
Parameters
| alloc | - | allocator to use for all memory allocations of the constructed basic_stacktrace
|
| skip | - | the number of stacktrace entries to skip |
| max_depth | - | the maximum depth of the stacktrace entries |
Return value
If the allocation succeeds, the basic_stacktrace described above.
Otherwise, an empty basic_stacktrace.
Example
| This section is incomplete Reason: no example |
See also
creates a new basic_stacktrace (public member function) | |
| [static] |
constructs a new source_location corresponding to the location of the call site (public static member function of std::source_location) |