122 [[nodiscard]]
virtual std::string
serialize()
const = 0;
135 [[nodiscard]]
virtual std::string
getType()
const = 0;
148 static std::string
calculateHash(
const std::string& content);
159 [[nodiscard]] std::string
getHashId()
const;
187 std::string type_name;
196 std::string content_data;
220 [[nodiscard]] std::string
serialize()
const override;
230 [[nodiscard]] std::string
getType()
const override;
Вспомогательный класс для тестирования неабстрактных методов VcsObject.
Определения VcsObject.hxx:100
std::string serialize() const override
Реализация чисто виртуального метода. Возвращает сохраненное содержимое.
Определения VcsObject.cxx:57
std::string getType() const override
Реализация чисто виртуального метода. Возвращает сохраненное имя типа.
Определения VcsObject.cxx:61
TestableObject(std::string type, std::string data)
Основной конструктор.
Определения VcsObject.cxx:52
Абстрактный базовый класс, представляющий любой сохраняемый, адресуемый объект в СКВ.
Определения VcsObject.hxx:30
virtual std::string getType() const =0
Чисто виртуальный метод для получения типа объекта СКВ.
std::string getHashId() const
Возвращает уникальный хеш-идентификатор объекта.
Определения VcsObject.cxx:33
virtual std::string serialize() const =0
Чисто виртуальный метод для сериализации основных данных объекта.
void computeHash(const std::string &content)
Вычисляет криптографический хеш-идентификатор для содержимого объекта.
Определения VcsObject.cxx:19
VcsObject()=default
Конструктор по умолчанию. Требуется для производных классов.
virtual ~VcsObject()=default
Виртуальный деструктор.
static std::string calculateHash(const std::string &content)
Вычисляет SHA-256 хеш для заданного канонического содержимого.
Определения VcsObject.cxx:37
std::string hash_id
Уникальный криптографический хеш-идентификатор (например, SHA-256) для этого объекта.
Определения VcsObject.hxx:36
Основные структуры данных СКВ и модель объектов.