New cpp folder structure

Signed-off-by: Alexander Borsuk <me@alex.bio>
This commit is contained in:
Alexander Borsuk
2025-07-17 22:35:52 +03:00
committed by Konstantin Pastbin
parent c9cbb64f12
commit 76ffc99abd
2390 changed files with 345 additions and 339 deletions

View File

@@ -0,0 +1,40 @@
#pragma once
#include "base/base.hpp"
#include <unordered_set>
#include <vector>
class CheckUniqueIndexes
{
public:
bool operator()(uint32_t index) { return Add(index); }
private:
/// Add index to the set.
/// @return true If index was absent.
bool Add(uint32_t index)
{
if (m_v.size() <= index)
m_v.resize(index + 1);
bool const ret = !m_v[index];
m_v[index] = true;
return ret;
}
/// Remove index from the set.
/// @return true If index was present.
bool Remove(uint32_t index)
{
if (m_v.size() > index)
{
bool const ret = m_v[index];
m_v[index] = false;
return ret;
}
else
return false;
}
std::vector<bool> m_v;
};