summaryrefslogtreecommitdiffhomepage
path: root/dev/DebuggerKit/DebuggerContract.h
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-11-26 22:58:28 -0500
committerAmlal El Mahrouss <amlal@nekernel.org>2025-11-26 22:58:28 -0500
commite63063f6556aaa759b8af2cc5bf88b89e2dbcfab (patch)
tree551705f187dc1129ef0835ac7d1a56bbb6856340 /dev/DebuggerKit/DebuggerContract.h
parentad4deb740e8a358542d59dae2b3c1225c02b50db (diff)
parenteb7f40b000b0b1dc4605113f3f2d7e87003d6d43 (diff)
Merge branch 'dev' of github.com:nekernel-org/necti into dev
Diffstat (limited to 'dev/DebuggerKit/DebuggerContract.h')
-rw-r--r--dev/DebuggerKit/DebuggerContract.h52
1 files changed, 0 insertions, 52 deletions
diff --git a/dev/DebuggerKit/DebuggerContract.h b/dev/DebuggerKit/DebuggerContract.h
deleted file mode 100644
index 2114041..0000000
--- a/dev/DebuggerKit/DebuggerContract.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/* ========================================
-
- Copyright (C) 2025 Amlal El Mahrouss, Licensed under the Apache 2.0 license.
-
-======================================== */
-
-#pragma once
-
-#include <DebuggerKit/Platform.h>
-
-#define DK_DEBUGGER_CONTRACT : public ::DebuggerKit::DebuggerContract
-
-namespace DebuggerKit {
-class DebuggerContract;
-
-/// =========================================================== ///
-/// \brief Process ID
-/// =========================================================== ///
-typedef uint64_t ProcessID;
-
-/// =========================================================== ///
-/// \brief Address type, a la BSD.
-/// =========================================================== ///
-typedef char* CAddress;
-
-/// =========================================================== ///
-/// \brief Debugger contract class in C++, as per the design states.
-/// \author Amlal El Mahrouss
-/// =========================================================== ///
-class DebuggerContract {
- public:
- explicit DebuggerContract() = default;
- virtual ~DebuggerContract() = default;
-
- public:
- DebuggerContract& operator=(const DebuggerContract&) = default;
- DebuggerContract(const DebuggerContract&) = default;
-
- public:
- virtual bool Attach(std::string path, std::string argv, ProcessID& pid) noexcept = 0;
- virtual bool BreakAt(std::string symbol) noexcept = 0;
- virtual bool Break() noexcept = 0;
- virtual bool Continue() noexcept = 0;
- virtual bool Detach() noexcept = 0;
-
- virtual std::unordered_map<uintptr_t, uintptr_t>& Get() { return m_breakpoints; }
-
- protected:
- ProcessID m_pid{(ProcessID)~0};
- std::unordered_map<uintptr_t, uintptr_t> m_breakpoints;
-};
-} // namespace DebuggerKit