diff options
| author | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-07-16 15:10:27 +0200 |
|---|---|---|
| committer | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-07-16 15:10:27 +0200 |
| commit | 9383579d43f834519d5061527f749acf8dca59c6 (patch) | |
| tree | d7e2e759d44bbc0265872d728874ab55bf75ef5b /modules/core/c++/abstract/data.hpp | |
| parent | 18346ca25b838908b21c29a3e29f89e7a55a1474 (diff) | |
| download | libs-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.hpp | 53 |
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; -}; - } |
