Files
hack/bin/main.cpp
2025-04-18 12:51:43 +03:00

66 lines
1.2 KiB
C++

#include <vector>
#include <forward_list>
#include "hack/logger/logger.hpp"
#include "hack/range/sort.hpp"
#include "hack/math/max.hpp"
#include "hack/patterns/ring_buffer.hpp"
#include "hack/patterns/identificator.hpp"
// #include "hack/security/uuid.hpp"
auto main(int argc, char *argv[]) -> int
{
// patterns::ring_buffer
{
hack::patterns::ring_buffer<int> rb;
rb.create(10);
for (int i = 0; i < 10; ++i) rb.put(i);
hack::log()(rb);
hack::log()(rb.size());
rb.skip(3);
hack::log()(rb.get().value());
hack::log()(rb.size());
std::vector<int> v(3);
rb.get(v, 3);
hack::log()(v);
}
// security
{
// hack::log()(hack::security::generate_uuid());
}
// patterns::identificator
{
struct a : public hack::patterns::identificator<>
{} aa;
a bb;
a cc;
a dd;
hack::log()(aa.m_id, bb.m_id, cc.m_id, dd.m_id);
}
// range::sort
{
std::vector<int> v { 4, 4, 6, 1, 4, 3, 2 };
std::forward_list<int> l { 8, 7, 5, 9, 0, 1, 3, 2, 6, 4 };
hack::range::sort(v);
hack::range::sort(l);
hack::log()(v);
hack::log()(l);
}
// math::max
{
int a = 4, b = 5;
int& c = a;
hack::log()(hack::math::max(4, 5));
hack::log()(hack::math::max(c, b));
}
}