From 09e164c02120f05c9364d5d9a8faad2ec0026425 Mon Sep 17 00:00:00 2001 From: Claudius 'keldu' Holeksa Date: Wed, 16 Oct 2024 12:52:32 +0200 Subject: Dangling changes --- modules/lang/c++/c_transfer.hpp | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'modules/lang/c++/c_transfer.hpp') diff --git a/modules/lang/c++/c_transfer.hpp b/modules/lang/c++/c_transfer.hpp index 5de204c..953f732 100644 --- a/modules/lang/c++/c_transfer.hpp +++ b/modules/lang/c++/c_transfer.hpp @@ -4,4 +4,43 @@ #include "c_types.hpp" namespace saw { +namespace impl { +template +struct c_transfer_generater; + +template +struct c_transfer_generater { +public: + static error_or apply (const lang_c::config& cfg, lang_c::transfer_binding_state& state){ + + return make_error(); + } +}; + +template +struct c_transfer_generater, Enc> { +private: + // Not used currently + using ReducedTmplGroup = typename tmpl_reduce>::type; +private: + template + static error_or apply_ele(const lang_c::config& cfg, lang_c::transfer_binding_state& state){ + if constexpr ( i < sizeof...(TransTypes)){ + { + using pType = typename parameter_pack_type::type; + auto eov = c_transfer_generater::apply(cfg,state); + if(eov.is_error()){ + return eov; + } + } + return apply_ele(cfg,state); + } + return make_void(); + } +public: + static error_or apply(const lang_c::config& cfg, lang_c::transfer_binding_state& state){ + return apply_ele<0u>(cfg, state); + } +}; +} } -- cgit v1.2.3