From bba582964bded940f9dc280fd15ed84aa2db2d39 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Wed, 17 Sep 2025 09:59:28 +0200 Subject: feat! lib: reorganize library (OCL v1.0.44) Signed-off-by: Amlal El Mahrouss --- dev/lib/utility/chunk_string.hpp | 102 --------------------------------------- 1 file changed, 102 deletions(-) delete mode 100644 dev/lib/utility/chunk_string.hpp (limited to 'dev/lib/utility/chunk_string.hpp') diff --git a/dev/lib/utility/chunk_string.hpp b/dev/lib/utility/chunk_string.hpp deleted file mode 100644 index 4fe5cc2..0000000 --- a/dev/lib/utility/chunk_string.hpp +++ /dev/null @@ -1,102 +0,0 @@ -/* -* File: core/chunk_string.hpp - * Purpose: String implementation for the OCL C++ library. - * Author: Amlal El Mahrouss (amlal@nekernel.org) - * Copyright 2025, Amlal El Mahrouss - */ - -#ifndef OCL_UTILITY_CHUNK_STRING_HPP -#define OCL_UTILITY_CHUNK_STRING_HPP - -#include - -namespace ocl -{ - template - class basic_chunk_string; - - template - class basic_chunk_string final - { - private: - char_type packed_chunks_[max_chunk_size] = {0}; - std::size_t chunk_total_{}; - - bool bad_{false}; - - public: - const bool& bad{bad_}; - - basic_chunk_string() = default; - - basic_chunk_string(const char_type* in) - { - this->operator+=(in); - } - - basic_chunk_string(const std::basic_string& in) - { - this->operator+=(in); - } - - ~basic_chunk_string() = default; - - basic_chunk_string& operator=(const basic_chunk_string&) = delete; - basic_chunk_string(const basic_chunk_string&) = delete; - - public: - basic_chunk_string& operator+=(const std::basic_string& in) - { - if (in.empty() || bad_) - return *this; - - if (in.size() > max_chunk_size) - { - bad_ = true; - return *this; - } - - if (chunk_total_ > max_chunk_size) - { - bad_ = true; - return *this; - } - - const auto& sz = in.size(); - const static auto size_max_chunk = max_chunk_size; - const auto& ptr = in.data(); - - if (chunk_total_ < size_max_chunk) - { - std::memcpy(packed_chunks_ + chunk_total_, ptr, sz); - chunk_total_ += sz; - } - - return *this; - } - - std::basic_string str() const noexcept - { - static std::basic_string ret; - - if (ret.size() > 0) - ret.clear(); - - ret += packed_chunks_; - - return ret; - } - - void print() noexcept - { - ocl::io::print(packed_chunks_); - } - }; - - template - inline void print(basic_chunk_string& fmt) noexcept - { - fmt.print(); - } -} // namespace ocl -#endif // ifndef OCL_UTILITY_CHUNK_STRING_HPP -- cgit v1.2.3