finalize schema/data setup

Signed-off-by: Folling <mail@folling.io>
This commit is contained in:
folling 2025-01-01 13:49:05 +01:00 committed by Folling
parent 4d7bf09c4e
commit 954b8a11a3
Signed by: folling
SSH key fingerprint: SHA256:S9qEx5WCFFLK49tE/LKnKuJYM5sw+++Dn6qJbbyxnCY
89 changed files with 2324 additions and 6271 deletions

View file

@ -1,19 +1,24 @@
#pragma once
#include <ikarus/objects/object.hpp>
#include <string>
#include <vector>
struct IkarusEntity : public IkarusObject {
public:
inline IkarusEntity(struct IkarusProject * project, int64_t id);
#include <ikarus/values/value.hpp>
IkarusEntity(IkarusEntity const &) = default;
IkarusEntity(IkarusEntity &&) = default;
struct IkarusEntity {
constinit static inline auto object_name = "entity";
constinit static inline auto table_name = "entities";
IkarusEntity & operator=(IkarusEntity const &) = default;
IkarusEntity & operator=(IkarusEntity &&) = default;
IkarusEntity(
struct IkarusProject * project,
int64_t id,
std::string_view name
);
~IkarusEntity() override = default;
struct IkarusProject * project;
int64_t id;
std::string name;
public:
std::string_view get_table_name() const noexcept override;
std::vector<std::pair<std::string_view, IkarusValue *>> values_ordered;
std::unordered_map<std::string, IkarusValue> values;
};