#pragma once #include #include #include namespace theo::recomp { class reloc_t { public: explicit reloc_t(std::uint32_t offset, std::size_t hash, const std::string&& sym_name) : m_offset(offset), m_hash(hash), m_sym_name(sym_name) {} std::size_t hash() { return m_hash; } std::string name() { return m_sym_name; } std::uint32_t offset() { return m_offset; } void offset(std::uint32_t offset) { m_offset = offset; } void add_transform( std::pair entry) { m_transforms.push_back(entry); } std::vector>& get_transforms() { return m_transforms; } private: std::vector> m_transforms; std::string m_sym_name; std::size_t m_hash; std::uint32_t m_offset; }; } // namespace theo::recomp