From a38dacc6489ff3c7a0748a01ed7cc2bd0cdaaa7c Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Sat, 29 May 2021 01:03:28 +0300 Subject: include/pdb/ -> include/winapi/debug/ --- include/pdb/dbghelp.hpp | 72 ------------------------------------------------- 1 file changed, 72 deletions(-) delete mode 100644 include/pdb/dbghelp.hpp (limited to 'include/pdb/dbghelp.hpp') diff --git a/include/pdb/dbghelp.hpp b/include/pdb/dbghelp.hpp deleted file mode 100644 index 6965823..0000000 --- a/include/pdb/dbghelp.hpp +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (c) 2017 Egor Tensin -// This file is part of the "winapi-debug" project. -// For details, see https://github.com/egor-tensin/winapi-debug. -// Distributed under the MIT License. - -#pragma once - -#include "address.hpp" -#include "module.hpp" -#include "symbol.hpp" - -#include - -#include -#include - -namespace pdb { - -class DbgHelp { -public: - static DbgHelp current_process() { return DbgHelp{true}; } - static DbgHelp post_mortem() { return DbgHelp{false}; } - - void swap(DbgHelp& other) noexcept; - - DbgHelp(DbgHelp&& other) noexcept; - DbgHelp& operator=(DbgHelp) noexcept; - ~DbgHelp(); - - ModuleInfo load_pdb(const std::string& path) const; - - typedef std::function OnModule; - void enum_modules(const OnModule&) const; - - ModuleInfo resolve_module(Address) const; - - typedef std::function OnSymbol; - static constexpr auto all_symbols = "*!*"; - void enum_symbols(const ModuleInfo&, const std::string& mask, const OnSymbol&) const; - void enum_symbols(const ModuleInfo&, const OnSymbol&) const; - void enum_symbols(const std::string& mask, const OnSymbol&) const; - void enum_symbols(const OnSymbol&) const; - - SymbolInfo resolve_symbol(Address) const; - SymbolInfo resolve_symbol(const std::string&) const; - - LineInfo resolve_line(Address) const; - -private: - explicit DbgHelp(bool invade_current_process); - - void close(); - - HANDLE id = NULL; - - DbgHelp(const DbgHelp&) = delete; -}; - -inline void swap(DbgHelp& a, DbgHelp& b) noexcept { - a.swap(b); -} - -} // namespace pdb - -namespace std { - -template <> -inline void swap(pdb::DbgHelp& a, pdb::DbgHelp& b) noexcept { - a.swap(b); -} - -} // namespace std -- cgit v1.3