Files
libconfig/build-config/reflect-cpp/include/rfl/generic/write.hpp
Emily Boudreaux ec13264050 feat(reflect-cpp): Switched from glaze -> reflect cpp
A bug was discovered in glaze which prevented valid toml output. We have
switched to toml++ and reflect-cpp. The interface has remained the same
so this should not break any code
2025-12-06 10:55:46 -05:00

25 lines
527 B
C++

#ifndef GENERIC_WRITE_HPP_
#define GENERIC_WRITE_HPP_
#include "../Generic.hpp"
#include "../parsing/Parent.hpp"
#include "Parser.hpp"
namespace rfl {
namespace generic {
/// Writes an object to a generic.
template <class... Ps>
Generic write(const auto& _t) {
using T = std::remove_cvref_t<decltype(_t)>;
using ParentType = parsing::Parent<Writer>;
auto w = Writer();
Parser<T, Processors<Ps...>>::write(w, _t, typename ParentType::Root{});
return w.root();
}
} // namespace generic
} // namespace rfl
#endif