From e1c87bdacc24cf65d0c1b2e9f484e9a7f19256dd Mon Sep 17 00:00:00 2001 From: DerThorsten Date: Thu, 20 Nov 2025 10:35:57 +0100 Subject: [PATCH 1/2] 4x updates --- include/xeus-javascript/convert_json.hpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/include/xeus-javascript/convert_json.hpp b/include/xeus-javascript/convert_json.hpp index 8f495ff..043f94d 100644 --- a/include/xeus-javascript/convert_json.hpp +++ b/include/xeus-javascript/convert_json.hpp @@ -48,18 +48,18 @@ struct BindingType { }; -template -using is_decayed_json = std::is_same, nl::json>; +// template +// using is_decayed_json = std::is_same, nl::json>; -template -using enable_if_decayed_json = typename std::enable_if::value, void>::type; +// template +// using enable_if_decayed_json = typename std::enable_if::value, void>::type; -template -struct TypeID > { - static constexpr TYPEID get() { - return LightTypeID::get(); - } -}; +// template +// struct TypeID +// static constexpr TYPEID get() { +// return LightTypeID::get(); +// } +// }; From 649ddbe0c30aadee6a16630b1491bdf19d532a83 Mon Sep 17 00:00:00 2001 From: DerThorsten Date: Tue, 25 Nov 2025 09:24:20 +0100 Subject: [PATCH 2/2] unify --- CMakeLists.txt | 6 +++ include/xeus-javascript/convert_json.hpp | 61 +++++------------------- 2 files changed, 18 insertions(+), 49 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a5d435d..653f42d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -60,6 +60,12 @@ if(EMSCRIPTEN) SET(XEUS_JAVASCRIPT_USE_SHARED_XEUS ON) SET(XEUS_JAVASCRIPT_USE_SHARED_XEUS_JAVASCRIPT OFF) SET(XEUS_JAVASCRIPT_BUILD_TESTS OFF) + + + if (EMSCRIPTEN_VERSION VERSION_LESS "4.0.0") + # c-definitions for older emscripten versions + add_compile_definitions(XEUS_JAVASCRIPT_EMSCRIPTEN_OLD) + endif() endif() diff --git a/include/xeus-javascript/convert_json.hpp b/include/xeus-javascript/convert_json.hpp index 043f94d..6e37385 100644 --- a/include/xeus-javascript/convert_json.hpp +++ b/include/xeus-javascript/convert_json.hpp @@ -47,60 +47,23 @@ struct BindingType { } }; +#ifdef XEUS_JAVASCRIPT_EMSCRIPTEN_OLD -// template -// using is_decayed_json = std::is_same, nl::json>; -// template -// using enable_if_decayed_json = typename std::enable_if::value, void>::type; +template +using is_decayed_json = std::is_same, nl::json>; -// template -// struct TypeID -// static constexpr TYPEID get() { -// return LightTypeID::get(); -// } -// }; +template +using enable_if_decayed_json = typename std::enable_if::value, void>::type; +template +struct TypeID > { + static constexpr TYPEID get() { + return LightTypeID::get(); + } +}; - - - - -// template <> -// struct TypeID { -// static constexpr TYPEID get() { -// return LightTypeID::get(); -// } -// }; - -// template <> -// struct TypeID { -// static constexpr TYPEID get() { -// return LightTypeID::get(); -// } -// }; - -// template <> -// struct TypeID< nl::json && > { -// static constexpr TYPEID get() { -// return LightTypeID::get(); -// } -// }; - - -// template <> -// struct TypeID { -// static constexpr TYPEID get() { -// return LightTypeID::get(); -// } -// }; - -// template <> -// struct TypeID { -// static constexpr TYPEID get() { -// return LightTypeID::get(); -// } -// }; +#endif } // namespace internal } // namespace emscripten