Boost logo

Boost :

Subject: Re: [boost] [Boost-users] Checking interest in stacktrace library
From: Antony Polukhin (antoshkka_at_[hidden])
Date: 2016-06-18 12:44:40


2016-06-18 17:49 GMT+03:00 Edward Diener <eldiener_at_[hidden]>:

> On 6/18/2016 6:34 AM, Antony Polukhin wrote:
>
>> Is there interest in it?
>> What functionality would you like to have in it?
>>
>
> Documentation is always helpful.
>

Yeep, that's currently missing :(

If in short:

namespace boost { namespace stacktrace {

class stacktrace {
public:
    BOOST_STATIC_CONSTEXPR std::size_t max_symbol_width = 256;
    typedef boost::array<char, max_symbol_width> frame_t;

    stacktrace() BOOST_NOEXCEPT;
    stacktrace(const stacktrace& bt) BOOST_NOEXCEPT;
    stacktrace& operator=(const stacktrace& bt) BOOST_NOEXCEPT;
    ~stacktrace() BOOST_NOEXCEPT;

    std::size_t size() const BOOST_NOEXCEPT;
    frame_t operator[](std::size_t frame) const BOOST_NOEXCEPT;
};

template <class CharT, class TraitsT>
std::basic_ostream<CharT, TraitsT>&
operator<<(std::basic_ostream<CharT, TraitsT>& os, const stacktrace&
bt);

}}

So you can construct stacktraces, copy them and output them to streams:

std::cerr << stacktrace();

-- 
Best regards,
Antony Polukhin

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk