Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:52:31

0001 // Copyright Antony Polukhin, 2016-2023.
0002 //
0003 // Distributed under the Boost Software License, Version 1.0. (See
0004 // accompanying file LICENSE_1_0.txt or copy at
0005 // http://www.boost.org/LICENSE_1_0.txt)
0006 
0007 #ifndef BOOST_STACKTRACE_DETAIL_UNWIND_BASE_IMPLS_HPP
0008 #define BOOST_STACKTRACE_DETAIL_UNWIND_BASE_IMPLS_HPP
0009 
0010 #include <boost/config.hpp>
0011 #ifdef BOOST_HAS_PRAGMA_ONCE
0012 #   pragma once
0013 #endif
0014 
0015 #include <boost/stacktrace/frame.hpp>
0016 
0017 namespace boost { namespace stacktrace { namespace detail {
0018 
0019 struct to_string_using_nothing {
0020     std::string res;
0021 
0022     void prepare_function_name(const void* addr) {
0023         res = boost::stacktrace::frame(addr).name();
0024     }
0025 
0026     bool prepare_source_location(const void* /*addr*/) const noexcept {
0027         return false;
0028     }
0029 };
0030 
0031 template <class Base> class to_string_impl_base;
0032 typedef to_string_impl_base<to_string_using_nothing> to_string_impl;
0033 
0034 inline std::string name_impl(const void* /*addr*/) {
0035     return std::string();
0036 }
0037 
0038 } // namespace detail
0039 
0040 std::string frame::source_file() const {
0041     return std::string();
0042 }
0043 
0044 std::size_t frame::source_line() const {
0045     return 0;
0046 }
0047 
0048 }} // namespace boost::stacktrace
0049 
0050 #endif // BOOST_STACKTRACE_DETAIL_UNWIND_BASE_IMPLS_HPP