summaryrefslogtreecommitdiff
path: root/modules/core/c++/abstract/data.hpp
diff options
context:
space:
mode:
authorClaudius "keldu" Holeksa <mail@keldu.de>2026-07-16 15:10:27 +0200
committerClaudius "keldu" Holeksa <mail@keldu.de>2026-07-16 15:10:27 +0200
commit9383579d43f834519d5061527f749acf8dca59c6 (patch)
treed7e2e759d44bbc0265872d728874ab55bf75ef5b /modules/core/c++/abstract/data.hpp
parent18346ca25b838908b21c29a3e29f89e7a55a1474 (diff)
downloadlibs-lbm-9383579d43f834519d5061527f749acf8dca59c6.tar.gz
Prepping for abstract data in lbm
Diffstat (limited to 'modules/core/c++/abstract/data.hpp')
-rw-r--r--modules/core/c++/abstract/data.hpp53
1 files changed, 10 insertions, 43 deletions
diff --git a/modules/core/c++/abstract/data.hpp b/modules/core/c++/abstract/data.hpp
index ed23268..f1ae5a7 100644
--- a/modules/core/c++/abstract/data.hpp
+++ b/modules/core/c++/abstract/data.hpp
@@ -1,52 +1,19 @@
#pragma once
-#include "templates.hpp"
+#include "schema.hpp"
+#include "encode.hpp"
namespace kel {
-namespace sch {
-struct Void {};
-
-struct UnsignedInteger {};
-struct SignedInteger {};
-struct FloatingPoint {};
-
-template<typename StorageT, typename InterfaceT>
-struct MixedPrecision {
- using Meta = Void;
- using StorageType = StorageT;
- using InterfaceType = InterfaceT;
-};
-
-template<typename PrimType, uint64_t N>
-struct Primitive {
- using Meta = Void;
- using Type = PrimType;
- static constexpr uint64_t Bytes = N;
-};
-
-template<typename T, uint64_t... Dims>
-struct FixedArray {
- using Meta = Void;
- using Inner = T;
- static constexpr std::array<uint64_t,sizeof...(Dims)> Dimensions{Dims...};
+namespace lbm {
+template<typename Schema, typename Encode = enc::Native>
+class data final {};
+
+template<typename T, uint64_t N>
+class data<sch::Primitive<T,N>,Encode> final {
+private:
+public:
};
-template<typename T, uint64_t Dims>
-struct Array {
- using Meta = FixedArray<UInt64,Dims>;
- using Inner = T;
- static constexpr std::array<uint64_t,sizeof...(Dims)> Dimensions{Dims};
-};
-
-template<typename... T>
-struct Tuple {
-};
}
-
-template<typename Sch>
-struct schema {
- using Type = Sch;
-};
-
}