refactor dynamic_util

This commit is contained in:
MihailRis 2024-08-22 22:43:39 +03:00
parent 5aa1ef52f0
commit e0a14c9c16
3 changed files with 7 additions and 13 deletions

View File

@ -65,6 +65,9 @@ namespace dynamic {
return put(List_sptr(value.release()));
}
List& put(const Value& value);
List& put(uint64_t value) {
return put(static_cast<integer_t>(value));
}
Value* getValueWriteable(size_t index);

View File

@ -5,8 +5,8 @@
#include "dynamic.hpp"
namespace dynamic {
template <int n>
inline dynamic::List_sptr to_value(glm::vec<n, float> vec) {
template <int n, typename T>
inline dynamic::List_sptr to_value(glm::vec<n, T> vec) {
auto list = dynamic::create_list();
for (size_t i = 0; i < n; i++) {
list->put(vec[i]);
@ -14,15 +14,6 @@ namespace dynamic {
return list;
}
template <int n>
inline dynamic::List_sptr to_value(glm::vec<n, int> vec) {
auto list = dynamic::create_list();
for (size_t i = 0; i < n; i++) {
list->put(static_cast<integer_t>(vec[i]));
}
return list;
}
template <int n, int m, typename T>
inline dynamic::List_sptr to_value(glm::mat<n, m, T> mat) {
auto list = dynamic::create_list();

View File

@ -31,8 +31,8 @@ std::unique_ptr<dynamic::Map> Structure::serialize() const {
auto& voxelsArr = root->putList("voxels");
for (size_t i = 0; i < voxels.size(); i++) {
voxelsArr.put(static_cast<integer_t>(voxels[i].id));
voxelsArr.put(static_cast<integer_t>(blockstate2int(voxels[i].state)));
voxelsArr.put(voxels[i].id);
voxelsArr.put(blockstate2int(voxels[i].state));
}
return root;
}