From 224017104a33730a31e94b94e6932e69ce6533b6 Mon Sep 17 00:00:00 2001 From: ThePhD Date: Thu, 28 Mar 2019 23:22:36 -0400 Subject: [PATCH] upload and tag official stable beta --- single/include/sol/forward.hpp | 4 ++-- single/include/sol/sol.hpp | 24 +++++++----------------- 2 files changed, 9 insertions(+), 19 deletions(-) diff --git a/single/include/sol/forward.hpp b/single/include/sol/forward.hpp index d9c39d06..be28ee97 100644 --- a/single/include/sol/forward.hpp +++ b/single/include/sol/forward.hpp @@ -20,8 +20,8 @@ // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // This file was generated with a script. -// Generated 2019-03-24 01:49:03.673540 UTC -// This header was generated with sol v3.0.0-beta (revision 4aac17c) +// Generated 2019-03-29 03:22:11.311923 UTC +// This header was generated with sol v3.0.1-beta2 (revision 7218151) // https://github.com/ThePhD/sol2 #ifndef SOL_SINGLE_INCLUDE_FORWARD_HPP diff --git a/single/include/sol/sol.hpp b/single/include/sol/sol.hpp index f243b91e..44f3e315 100644 --- a/single/include/sol/sol.hpp +++ b/single/include/sol/sol.hpp @@ -20,8 +20,8 @@ // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // This file was generated with a script. -// Generated 2019-03-24 01:49:03.378490 UTC -// This header was generated with sol v3.0.0-beta (revision 4aac17c) +// Generated 2019-03-29 03:22:11.072530 UTC +// This header was generated with sol v3.0.1-beta2 (revision 7218151) // https://github.com/ThePhD/sol2 #ifndef SOL_SINGLE_INCLUDE_HPP @@ -16338,26 +16338,16 @@ namespace sol { template struct lua_call_wrapper, is_index, is_variable, checked, boost, clean_stack, C> { - typedef destructor_wrapper F; - static int call(lua_State* L, const F& f) { + template + static int call(lua_State* L, F&& f) { if constexpr (std::is_void_v) { return detail::usertype_alloc_destruct(L); } else { - if constexpr (std::is_void_v) { - using bt = meta::bind_traits>; - using arg0_t = typename bt::template arg_at<0>; - - decltype(auto) obj = stack::get(L, -1); - f.fx(detail::implicit_wrapper>(obj)); - return 0; - } - else { - T& obj = stack::get(L, -1); - f.fx(detail::implicit_wrapper(obj)); - return 0; - } + using uFx = meta::unqualified_t; + lua_call_wrapper lcw{}; + return lcw.call(L, std::forward(f).fx); } } };