SVCS - Русская документация
Загрузка...
Поиск...
Не найдено
Класс svcs::core::Blob

Представляет содержимое файла (Binary Large Object). Подробнее...

#include <Blob.hxx>

Граф наследования:svcs::core::Blob:
svcs::core::VcsObject

Открытые члены

 Blob (std::string raw_data)
 Конструктор для объекта Blob.
std::string getType () const override
 Возвращает тип объекта СКВ.
std::string serialize () const override
 Сериализует основные данные объекта для хеширования и хранения.
const std::string & getData () const
 Возвращает необработанное содержимое данных, хранящееся в Blob.
Открытые члены унаследованные от svcs::core::VcsObject
 VcsObject ()=default
 Конструктор по умолчанию. Требуется для производных классов.
 VcsObject (const VcsObject &other)=default
 Конструктор копирования. Требуется для производных классов для корректного копирования hash_id.
virtual ~VcsObject ()=default
 Виртуальный деструктор.
std::string getHashId () const
 Возвращает уникальный хеш-идентификатор объекта.

Дополнительные унаследованные члены

Открытые статические члены унаследованные от svcs::core::VcsObject
static std::string calculateHash (const std::string &content)
 Вычисляет SHA-256 хеш для заданного канонического содержимого.
Защищенные члены унаследованные от svcs::core::VcsObject
void computeHash (const std::string &content)
 Вычисляет криптографический хеш-идентификатор для содержимого объекта.
Защищенные данные унаследованные от svcs::core::VcsObject
std::string hash_id
 Уникальный криптографический хеш-идентификатор (например, SHA-256) для этого объекта.

Подробное описание

Представляет содержимое файла (Binary Large Object).

Это объект самого низкого уровня в СКВ, хранящий только необработанные байты файла. Объект Blob является неизменяемым; его хеш зависит исключительно от его содержимого.

Конструктор(ы)

◆ Blob()

svcs::core::Blob::Blob ( std::string raw_data)

Конструктор для объекта Blob.

Инициализирует объект и немедленно вычисляет его хеш ID на основе raw_data.

Аргументы
raw_dataНеобработанное содержимое файла, которое будет сохранено и хешировано.

Методы

◆ getData()

const std::string & svcs::core::Blob::getData ( ) const
nodiscard

Возвращает необработанное содержимое данных, хранящееся в Blob.

Возвращает
const std::string& Константная ссылка на содержимое файла.

◆ getType()

std::string svcs::core::Blob::getType ( ) const
nodiscardoverridevirtual

Возвращает тип объекта СКВ.

Возвращает
std::string Всегда возвращает "blob".

Замещает svcs::core::VcsObject.

◆ serialize()

std::string svcs::core::Blob::serialize ( ) const
nodiscardoverridevirtual

Сериализует основные данные объекта для хеширования и хранения.

Возвращает
std::string Возвращает само необработанное содержимое файла (data).

Замещает svcs::core::VcsObject.


Объявления и описания членов классов находятся в файлах: