Files
BloomPatched/src/Targets/TargetBitFieldDescriptor.hpp
Nav 6cdbfbe950 Massive refactor to accommodate RISC-V targets
- Refactored entire codebase (excluding the Insight component) to accommodate multiple target architectures (no longer specific to AVR)
- Deleted 'generate SVD' GDB monitor command - I will eventually move this functionality to the Bloom website
- Added unit size property to address spaces
- Many other changes which I couldn't be bothered to describe here
2024-07-23 21:14:22 +01:00

37 lines
952 B
C++

#pragma once
#include <cstdint>
#include <string>
#include <optional>
#include "src/Helpers/Pair.hpp"
namespace Targets
{
struct TargetBitFieldDescriptor
{
public:
std::string key;
std::string name;
std::uint64_t mask;
std::optional<std::string> description;
TargetBitFieldDescriptor(
const std::string& key,
const std::string& name,
std::uint64_t mask,
std::optional<std::string> description
);
TargetBitFieldDescriptor& operator = (const TargetBitFieldDescriptor& other) = delete;
TargetBitFieldDescriptor(TargetBitFieldDescriptor&& other) noexcept = default;
TargetBitFieldDescriptor& operator = (TargetBitFieldDescriptor&& other) = default;
[[nodiscard]] TargetBitFieldDescriptor clone() const;
private:
TargetBitFieldDescriptor(const TargetBitFieldDescriptor& other) = default;
};
}