x_info_interface.hpp 876 B

1234567891011121314151617181920212223242526272829303132
  1. // Copyright 2014 Renato Tegon Forti, Antony Polukhin.
  2. // Copyright 2015-2019 Antony Polukhin.
  3. //
  4. // Distributed under the Boost Software License, Version 1.0.
  5. // (See accompanying file LICENSE_1_0.txt
  6. // or copy at http://www.boost.org/LICENSE_1_0.txt)
  7. #ifndef BOOST_DLL_DETAIL_X_INFO_INTERFACE_HPP
  8. #define BOOST_DLL_DETAIL_X_INFO_INTERFACE_HPP
  9. #include <boost/dll/config.hpp>
  10. #ifdef BOOST_HAS_PRAGMA_ONCE
  11. # pragma once
  12. #endif
  13. #include <string>
  14. #include <vector>
  15. namespace boost { namespace dll { namespace detail {
  16. class x_info_interface {
  17. public:
  18. virtual std::vector<std::string> sections() = 0;
  19. virtual std::vector<std::string> symbols() = 0;
  20. virtual std::vector<std::string> symbols(const char* section_name) = 0;
  21. virtual ~x_info_interface() BOOST_NOEXCEPT {}
  22. };
  23. }}} // namespace boost::dll::detail
  24. #endif // BOOST_DLL_DETAIL_X_INFO_INTERFACE_HPP