Fix configuration macros

- Enable all necessary configuration macros to be deliberately shut off, appropriately
- Fix version macro headings
This commit is contained in:
ThePhD 2020-10-15 01:18:12 -04:00
parent 288f4f4e73
commit e5e6466e09
No known key found for this signature in database
GPG Key ID: 1509DB1C0F702BFA
8 changed files with 304 additions and 117 deletions

View File

@ -25,7 +25,7 @@
cmake_minimum_required(VERSION 3.5.0) cmake_minimum_required(VERSION 3.5.0)
# # # project declaration # # # project declaration
project(sol2 VERSION 3.2.2 LANGUAGES CXX C) project(sol2 VERSION 3.2.3 LANGUAGES CXX C)
include(GNUInstallDirs) include(GNUInstallDirs)

View File

@ -1,4 +1,4 @@
## sol3 (sol2 v3.2.2) ## sol3 (sol2 v3.2.3)
[![Linux & Max OSX Build Status](https://travis-ci.org/ThePhD/sol2.svg?branch=develop)](https://travis-ci.org/ThePhD/sol2) [![Linux & Max OSX Build Status](https://travis-ci.org/ThePhD/sol2.svg?branch=develop)](https://travis-ci.org/ThePhD/sol2)
[![Windows Build status](https://ci.appveyor.com/api/projects/status/n38suofr21e9uk7h?svg=true)](https://ci.appveyor.com/project/ThePhD/sol2) [![Windows Build status](https://ci.appveyor.com/api/projects/status/n38suofr21e9uk7h?svg=true)](https://ci.appveyor.com/project/ThePhD/sol2)

View File

@ -57,7 +57,7 @@ author = 'ThePhD'
# The short X.Y version. # The short X.Y version.
version = '3.2' version = '3.2'
# The full version, including alpha/beta/rc tags. # The full version, including alpha/beta/rc tags.
release = '3.2.2' release = '3.2.3'
# The language for content autogenerated by Sphinx. Refer to documentation # The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages. # for a list of supported languages.

View File

@ -40,9 +40,11 @@
#include <bitset> #include <bitset>
#include <forward_list> #include <forward_list>
#include <string> #include <string>
#include <limits>
#include <algorithm> #include <algorithm>
#include <sstream> #include <sstream>
#include <optional> #include <optional>
#include <type_traits>
namespace sol { namespace sol {
namespace detail { namespace detail {

View File

@ -31,9 +31,9 @@
// clang-format off // clang-format off
#define SOL_VERSION_MAJOR 3 #define SOL_VERSION_MAJOR 3
#define SOL_VERSION_MINOR 5 #define SOL_VERSION_MINOR 2
#define SOL_VERSION_PATCH 0 #define SOL_VERSION_PATCH 3
#define SOL_VERSION_STRING "3.5.0" #define SOL_VERSION_STRING "3.2.3"
#define SOL_VERSION ((SOL_VERSION_MAJOR * 100000) + (SOL_VERSION_MINOR * 100) + (SOL_VERSION_PATCH)) #define SOL_VERSION ((SOL_VERSION_MAJOR * 100000) + (SOL_VERSION_MINOR * 100) + (SOL_VERSION_PATCH))
#define SOL_IS_ON(OP_SYMBOL) ((3 OP_SYMBOL 3) != 0) #define SOL_IS_ON(OP_SYMBOL) ((3 OP_SYMBOL 3) != 0)
@ -179,20 +179,32 @@
#define SOL_RTTI_I_ SOL_DEFAULT_ON #define SOL_RTTI_I_ SOL_DEFAULT_ON
#endif #endif
#if defined(SOL_NO_THREAD_LOCAL) && (SOL_NO_THREAD_LOCAL != 0) #if defined(SOL_NO_THREAD_LOCAL)
#define SOL_USE_THREAD_LOCAL_I_ SOL_OFF #if SOL_NO_THREAD_LOCAL != 0
#define SOL_USE_THREAD_LOCAL_I_ SOL_OFF
#else
#define SOL_USE_THREAD_LOCAL_I_ SOL_ON
#endif
#else #else
#define SOL_USE_THREAD_LOCAL_I_ SOL_DEFAULT_ON #define SOL_USE_THREAD_LOCAL_I_ SOL_DEFAULT_ON
#endif // thread_local keyword is bjorked on some platforms #endif // thread_local keyword is bjorked on some platforms
#if defined(SOL_ALL_SAFETIES_ON) && (SOL_ALL_SAFETIES_ON != 0) #if defined(SOL_ALL_SAFETIES_ON)
#define SOL_ALL_SAFETIES_ON_I_ SOL_ON #if SOL_ALL_SAFETIES_ON != 0
#define SOL_ALL_SAFETIES_ON_I_ SOL_ON
#else
#define SOL_ALL_SAFETIES_ON_I_ SOL_FF
#endif
#else #else
#define SOL_ALL_SAFETIES_ON_I_ SOL_DEFAULT_OFF #define SOL_ALL_SAFETIES_ON_I_ SOL_DEFAULT_OFF
#endif #endif
#if defined(SOL_SAFE_GETTER) && (SOL_SAFE_GETTER != 0) #if defined(SOL_SAFE_GETTER)
#define SOL_SAFE_GETTER_I_ SOL_ON #if SOL_SAFE_GETTER != 0
#define SOL_SAFE_GETTER_I_ SOL_ON
#else
#define SOL_SAFE_GETTER_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_GETTER_I_ SOL_ON #define SOL_SAFE_GETTER_I_ SOL_ON
@ -203,8 +215,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_USERTYPE) && (SOL_SAFE_USERTYPE != 0) #if defined(SOL_SAFE_USERTYPE)
#define SOL_SAFE_USERTYPE_I_ SOL_ON #if SOL_SAFE_USERTYPE != 0
#define SOL_SAFE_USERTYPE_I_ SOL_ON
#else
#define SOL_SAFE_USERTYPE_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_USERTYPE_I_ SOL_ON #define SOL_SAFE_USERTYPE_I_ SOL_ON
@ -215,8 +231,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_REFERENCES) && (SOL_SAFE_REFERENCES != 0) #if defined(SOL_SAFE_REFERENCES)
#define SOL_SAFE_REFERENCES_I_ SOL_ON #if SOL_SAFE_REFERENCES != 0
#define SOL_SAFE_REFERENCES_I_ SOL_ON
#else
#define SOL_SAFE_REFERENCES_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_REFERENCES_I_ SOL_ON #define SOL_SAFE_REFERENCES_I_ SOL_ON
@ -227,9 +247,18 @@
#endif #endif
#endif #endif
#if (defined(SOL_SAFE_FUNCTIONS) && (SOL_SAFE_FUNCTIONS != 0)) \ #if defined(SOL_SAFE_FUNCTIONS)
|| (defined(SOL_SAFE_FUNCTION_OBJECTS) && (SOL_SAFE_FUNCTION_OBJECTS != 0)) #if SOL_SAFE_FUNCTIONS != 0
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON #define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON
#else
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_OFF
#endif
#elif defined (SOL_SAFE_FUNCTION_OBJECTS)
#if SOL_SAFE_FUNCTION_OBJECTS != 0
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON
#else
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON #define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON
@ -240,8 +269,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_FUNCTION_CALLS) && (SOL_SAFE_FUNCTION_CALLS != 0) #if defined(SOL_SAFE_FUNCTION_CALLS)
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON #if SOL_SAFE_FUNCTION_CALLS != 0
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON
#else
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON #define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON
@ -252,8 +285,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_PROXIES) && (SOL_SAFE_PROXIES != 0) #if defined(SOL_SAFE_PROXIES)
#define SOL_SAFE_PROXIES_I_ SOL_ON #if SOL_SAFE_PROXIES != 0
#define SOL_SAFE_PROXIES_I_ SOL_ON
#else
#define SOL_SAFE_PROXIES_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_PROXIES_I_ SOL_ON #define SOL_SAFE_PROXIES_I_ SOL_ON
@ -264,8 +301,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_NUMERICS) && (SOL_SAFE_NUMERICS != 0) #if defined(SOL_SAFE_NUMERICS)
#define SOL_SAFE_NUMERICS_I_ SOL_ON #if SOL_SAFE_NUMERICS != 0
#define SOL_SAFE_NUMERICS_I_ SOL_ON
#else
#define SOL_SAFE_NUMERICS_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_NUMERICS_I_ SOL_ON #define SOL_SAFE_NUMERICS_I_ SOL_ON
@ -276,8 +317,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_STACK_CHECK) && (SOL_SAFE_STACK_CHECK != 0) #if defined(SOL_SAFE_STACK_CHECK)
#define SOL_SAFE_STACK_CHECK_I_ SOL_ON #if SOL_SAFE_STACK_CHECK != 0
#define SOL_SAFE_STACK_CHECK_I_ SOL_ON
#else
#define SOL_SAFE_STACK_CHECK_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_STACK_CHECK_I_ SOL_ON #define SOL_SAFE_STACK_CHECK_I_ SOL_ON
@ -288,9 +333,18 @@
#endif #endif
#endif #endif
#if (defined(SOL_NO_CHECK_NUMBER_PRECISION) && (SOL_NO_CHECK_NUMBER_PRECISION != 0)) \ #if defined(SOL_NO_CHECK_NUMBER_PRECISION)
|| (defined(SOL_NO_CHECKING_NUMBER_PRECISION) && (SOL_NO_CHECKING_NUMBER_PRECISION != 0)) #if SOL_NO_CHECK_NUMBER_PRECISION != 0
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_OFF #define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_OFF
#else
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON
#endif
#elif defined(SOL_NO_CHECKING_NUMBER_PRECISION)
#if SOL_NO_CHECKING_NUMBER_PRECISION != 0
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_OFF
#else
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON #define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON
@ -313,9 +367,18 @@
#define SOL_STRINGS_ARE_NUMBERS_I_ SOL_DEFAULT_OFF #define SOL_STRINGS_ARE_NUMBERS_I_ SOL_DEFAULT_OFF
#endif #endif
#if defined(SOL_ENABLE_INTEROP) && (SOL_ENABLE_INTEROP != 0) \ #if defined(SOL_ENABLE_INTEROP)
|| defined(SOL_USE_INTEROP) && (SOL_USE_INTEROP != 0) #if SOL_ENABLE_INTEROP != 0
#define SOL_USE_INTEROP_I_ SOL_ON #define SOL_USE_INTEROP_I_ SOL_ON
#else
#define SOL_USE_INTEROP_I_ SOL_OFF
#endif
#elif defined(SOL_USE_INTEROP)
#if SOL_USE_INTEROP != 0
#define SOL_USE_INTEROP_I_ SOL_ON
#else
#define SOL_USE_INTEROP_I_ SOL_OFF
#endif
#else #else
#define SOL_USE_INTEROP_I_ SOL_DEFAULT_OFF #define SOL_USE_INTEROP_I_ SOL_DEFAULT_OFF
#endif #endif
@ -437,16 +500,14 @@
#endif #endif
#endif #endif
#if defined(SOL_DEFAULT_PASS_ON_ERROR) && (SOL_DEFAULT_PASS_ON_ERROR != 0) #if defined(SOL_DEFAULT_PASS_ON_ERROR)
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_ON #if (SOL_DEFAULT_PASS_ON_ERROR != 0)
#else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_ON #define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_ON
#elif SOL_IS_ON(SOL_DEBUG_BUILD_I_)
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_DEFAULT_ON
#else #else
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_OFF #define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_OFF
#endif #endif
#else
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_DEFAULT_OFF
#endif #endif
#if defined(SOL_USING_CXX_LUA) #if defined(SOL_USING_CXX_LUA)

View File

@ -20,8 +20,8 @@
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
// This file was generated with a script. // This file was generated with a script.
// Generated 2020-10-03 21:34:25.034794 UTC // Generated 2020-10-15 05:17:12.555590 UTC
// This header was generated with sol v3.2.1 (revision 48eea7b5) // This header was generated with sol v3.2.2 (revision 288f4f4e)
// https://github.com/ThePhD/sol2 // https://github.com/ThePhD/sol2
#ifndef SOL_SINGLE_CONFIG_HPP #ifndef SOL_SINGLE_CONFIG_HPP

View File

@ -20,8 +20,8 @@
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
// This file was generated with a script. // This file was generated with a script.
// Generated 2020-10-03 21:34:25.022965 UTC // Generated 2020-10-15 05:17:12.543592 UTC
// This header was generated with sol v3.2.1 (revision 48eea7b5) // This header was generated with sol v3.2.2 (revision 288f4f4e)
// https://github.com/ThePhD/sol2 // https://github.com/ThePhD/sol2
#ifndef SOL_SINGLE_INCLUDE_FORWARD_HPP #ifndef SOL_SINGLE_INCLUDE_FORWARD_HPP
@ -39,9 +39,9 @@
#include <cstdint> #include <cstdint>
#define SOL_VERSION_MAJOR 3 #define SOL_VERSION_MAJOR 3
#define SOL_VERSION_MINOR 5 #define SOL_VERSION_MINOR 2
#define SOL_VERSION_PATCH 0 #define SOL_VERSION_PATCH 3
#define SOL_VERSION_STRING "3.5.0" #define SOL_VERSION_STRING "3.2.3"
#define SOL_VERSION ((SOL_VERSION_MAJOR * 100000) + (SOL_VERSION_MINOR * 100) + (SOL_VERSION_PATCH)) #define SOL_VERSION ((SOL_VERSION_MAJOR * 100000) + (SOL_VERSION_MINOR * 100) + (SOL_VERSION_PATCH))
#define SOL_IS_ON(OP_SYMBOL) ((3 OP_SYMBOL 3) != 0) #define SOL_IS_ON(OP_SYMBOL) ((3 OP_SYMBOL 3) != 0)
@ -185,20 +185,32 @@
#define SOL_RTTI_I_ SOL_DEFAULT_ON #define SOL_RTTI_I_ SOL_DEFAULT_ON
#endif #endif
#if defined(SOL_NO_THREAD_LOCAL) && (SOL_NO_THREAD_LOCAL != 0) #if defined(SOL_NO_THREAD_LOCAL)
#define SOL_USE_THREAD_LOCAL_I_ SOL_OFF #if SOL_NO_THREAD_LOCAL != 0
#define SOL_USE_THREAD_LOCAL_I_ SOL_OFF
#else
#define SOL_USE_THREAD_LOCAL_I_ SOL_ON
#endif
#else #else
#define SOL_USE_THREAD_LOCAL_I_ SOL_DEFAULT_ON #define SOL_USE_THREAD_LOCAL_I_ SOL_DEFAULT_ON
#endif // thread_local keyword is bjorked on some platforms #endif // thread_local keyword is bjorked on some platforms
#if defined(SOL_ALL_SAFETIES_ON) && (SOL_ALL_SAFETIES_ON != 0) #if defined(SOL_ALL_SAFETIES_ON)
#define SOL_ALL_SAFETIES_ON_I_ SOL_ON #if SOL_ALL_SAFETIES_ON != 0
#define SOL_ALL_SAFETIES_ON_I_ SOL_ON
#else
#define SOL_ALL_SAFETIES_ON_I_ SOL_FF
#endif
#else #else
#define SOL_ALL_SAFETIES_ON_I_ SOL_DEFAULT_OFF #define SOL_ALL_SAFETIES_ON_I_ SOL_DEFAULT_OFF
#endif #endif
#if defined(SOL_SAFE_GETTER) && (SOL_SAFE_GETTER != 0) #if defined(SOL_SAFE_GETTER)
#define SOL_SAFE_GETTER_I_ SOL_ON #if SOL_SAFE_GETTER != 0
#define SOL_SAFE_GETTER_I_ SOL_ON
#else
#define SOL_SAFE_GETTER_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_GETTER_I_ SOL_ON #define SOL_SAFE_GETTER_I_ SOL_ON
@ -209,8 +221,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_USERTYPE) && (SOL_SAFE_USERTYPE != 0) #if defined(SOL_SAFE_USERTYPE)
#define SOL_SAFE_USERTYPE_I_ SOL_ON #if SOL_SAFE_USERTYPE != 0
#define SOL_SAFE_USERTYPE_I_ SOL_ON
#else
#define SOL_SAFE_USERTYPE_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_USERTYPE_I_ SOL_ON #define SOL_SAFE_USERTYPE_I_ SOL_ON
@ -221,8 +237,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_REFERENCES) && (SOL_SAFE_REFERENCES != 0) #if defined(SOL_SAFE_REFERENCES)
#define SOL_SAFE_REFERENCES_I_ SOL_ON #if SOL_SAFE_REFERENCES != 0
#define SOL_SAFE_REFERENCES_I_ SOL_ON
#else
#define SOL_SAFE_REFERENCES_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_REFERENCES_I_ SOL_ON #define SOL_SAFE_REFERENCES_I_ SOL_ON
@ -233,9 +253,18 @@
#endif #endif
#endif #endif
#if (defined(SOL_SAFE_FUNCTIONS) && (SOL_SAFE_FUNCTIONS != 0)) \ #if defined(SOL_SAFE_FUNCTIONS)
|| (defined(SOL_SAFE_FUNCTION_OBJECTS) && (SOL_SAFE_FUNCTION_OBJECTS != 0)) #if SOL_SAFE_FUNCTIONS != 0
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON #define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON
#else
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_OFF
#endif
#elif defined (SOL_SAFE_FUNCTION_OBJECTS)
#if SOL_SAFE_FUNCTION_OBJECTS != 0
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON
#else
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON #define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON
@ -246,8 +275,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_FUNCTION_CALLS) && (SOL_SAFE_FUNCTION_CALLS != 0) #if defined(SOL_SAFE_FUNCTION_CALLS)
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON #if SOL_SAFE_FUNCTION_CALLS != 0
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON
#else
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON #define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON
@ -258,8 +291,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_PROXIES) && (SOL_SAFE_PROXIES != 0) #if defined(SOL_SAFE_PROXIES)
#define SOL_SAFE_PROXIES_I_ SOL_ON #if SOL_SAFE_PROXIES != 0
#define SOL_SAFE_PROXIES_I_ SOL_ON
#else
#define SOL_SAFE_PROXIES_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_PROXIES_I_ SOL_ON #define SOL_SAFE_PROXIES_I_ SOL_ON
@ -270,8 +307,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_NUMERICS) && (SOL_SAFE_NUMERICS != 0) #if defined(SOL_SAFE_NUMERICS)
#define SOL_SAFE_NUMERICS_I_ SOL_ON #if SOL_SAFE_NUMERICS != 0
#define SOL_SAFE_NUMERICS_I_ SOL_ON
#else
#define SOL_SAFE_NUMERICS_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_NUMERICS_I_ SOL_ON #define SOL_SAFE_NUMERICS_I_ SOL_ON
@ -282,8 +323,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_STACK_CHECK) && (SOL_SAFE_STACK_CHECK != 0) #if defined(SOL_SAFE_STACK_CHECK)
#define SOL_SAFE_STACK_CHECK_I_ SOL_ON #if SOL_SAFE_STACK_CHECK != 0
#define SOL_SAFE_STACK_CHECK_I_ SOL_ON
#else
#define SOL_SAFE_STACK_CHECK_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_STACK_CHECK_I_ SOL_ON #define SOL_SAFE_STACK_CHECK_I_ SOL_ON
@ -294,9 +339,18 @@
#endif #endif
#endif #endif
#if (defined(SOL_NO_CHECK_NUMBER_PRECISION) && (SOL_NO_CHECK_NUMBER_PRECISION != 0)) \ #if defined(SOL_NO_CHECK_NUMBER_PRECISION)
|| (defined(SOL_NO_CHECKING_NUMBER_PRECISION) && (SOL_NO_CHECKING_NUMBER_PRECISION != 0)) #if SOL_NO_CHECK_NUMBER_PRECISION != 0
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_OFF #define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_OFF
#else
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON
#endif
#elif defined(SOL_NO_CHECKING_NUMBER_PRECISION)
#if SOL_NO_CHECKING_NUMBER_PRECISION != 0
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_OFF
#else
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON #define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON
@ -319,9 +373,18 @@
#define SOL_STRINGS_ARE_NUMBERS_I_ SOL_DEFAULT_OFF #define SOL_STRINGS_ARE_NUMBERS_I_ SOL_DEFAULT_OFF
#endif #endif
#if defined(SOL_ENABLE_INTEROP) && (SOL_ENABLE_INTEROP != 0) \ #if defined(SOL_ENABLE_INTEROP)
|| defined(SOL_USE_INTEROP) && (SOL_USE_INTEROP != 0) #if SOL_ENABLE_INTEROP != 0
#define SOL_USE_INTEROP_I_ SOL_ON #define SOL_USE_INTEROP_I_ SOL_ON
#else
#define SOL_USE_INTEROP_I_ SOL_OFF
#endif
#elif defined(SOL_USE_INTEROP)
#if SOL_USE_INTEROP != 0
#define SOL_USE_INTEROP_I_ SOL_ON
#else
#define SOL_USE_INTEROP_I_ SOL_OFF
#endif
#else #else
#define SOL_USE_INTEROP_I_ SOL_DEFAULT_OFF #define SOL_USE_INTEROP_I_ SOL_DEFAULT_OFF
#endif #endif
@ -443,16 +506,14 @@
#endif #endif
#endif #endif
#if defined(SOL_DEFAULT_PASS_ON_ERROR) && (SOL_DEFAULT_PASS_ON_ERROR != 0) #if defined(SOL_DEFAULT_PASS_ON_ERROR)
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_ON #if (SOL_DEFAULT_PASS_ON_ERROR != 0)
#else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_ON #define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_ON
#elif SOL_IS_ON(SOL_DEBUG_BUILD_I_)
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_DEFAULT_ON
#else #else
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_OFF #define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_OFF
#endif #endif
#else
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_DEFAULT_OFF
#endif #endif
#if defined(SOL_USING_CXX_LUA) #if defined(SOL_USING_CXX_LUA)

View File

@ -20,8 +20,8 @@
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
// This file was generated with a script. // This file was generated with a script.
// Generated 2020-10-03 21:34:24.496436 UTC // Generated 2020-10-15 05:17:11.842591 UTC
// This header was generated with sol v3.2.1 (revision 48eea7b5) // This header was generated with sol v3.2.2 (revision 288f4f4e)
// https://github.com/ThePhD/sol2 // https://github.com/ThePhD/sol2
#ifndef SOL_SINGLE_INCLUDE_HPP #ifndef SOL_SINGLE_INCLUDE_HPP
@ -39,9 +39,9 @@
#include <cstdint> #include <cstdint>
#define SOL_VERSION_MAJOR 3 #define SOL_VERSION_MAJOR 3
#define SOL_VERSION_MINOR 5 #define SOL_VERSION_MINOR 2
#define SOL_VERSION_PATCH 0 #define SOL_VERSION_PATCH 3
#define SOL_VERSION_STRING "3.5.0" #define SOL_VERSION_STRING "3.2.3"
#define SOL_VERSION ((SOL_VERSION_MAJOR * 100000) + (SOL_VERSION_MINOR * 100) + (SOL_VERSION_PATCH)) #define SOL_VERSION ((SOL_VERSION_MAJOR * 100000) + (SOL_VERSION_MINOR * 100) + (SOL_VERSION_PATCH))
#define SOL_IS_ON(OP_SYMBOL) ((3 OP_SYMBOL 3) != 0) #define SOL_IS_ON(OP_SYMBOL) ((3 OP_SYMBOL 3) != 0)
@ -185,20 +185,32 @@
#define SOL_RTTI_I_ SOL_DEFAULT_ON #define SOL_RTTI_I_ SOL_DEFAULT_ON
#endif #endif
#if defined(SOL_NO_THREAD_LOCAL) && (SOL_NO_THREAD_LOCAL != 0) #if defined(SOL_NO_THREAD_LOCAL)
#define SOL_USE_THREAD_LOCAL_I_ SOL_OFF #if SOL_NO_THREAD_LOCAL != 0
#define SOL_USE_THREAD_LOCAL_I_ SOL_OFF
#else
#define SOL_USE_THREAD_LOCAL_I_ SOL_ON
#endif
#else #else
#define SOL_USE_THREAD_LOCAL_I_ SOL_DEFAULT_ON #define SOL_USE_THREAD_LOCAL_I_ SOL_DEFAULT_ON
#endif // thread_local keyword is bjorked on some platforms #endif // thread_local keyword is bjorked on some platforms
#if defined(SOL_ALL_SAFETIES_ON) && (SOL_ALL_SAFETIES_ON != 0) #if defined(SOL_ALL_SAFETIES_ON)
#define SOL_ALL_SAFETIES_ON_I_ SOL_ON #if SOL_ALL_SAFETIES_ON != 0
#define SOL_ALL_SAFETIES_ON_I_ SOL_ON
#else
#define SOL_ALL_SAFETIES_ON_I_ SOL_FF
#endif
#else #else
#define SOL_ALL_SAFETIES_ON_I_ SOL_DEFAULT_OFF #define SOL_ALL_SAFETIES_ON_I_ SOL_DEFAULT_OFF
#endif #endif
#if defined(SOL_SAFE_GETTER) && (SOL_SAFE_GETTER != 0) #if defined(SOL_SAFE_GETTER)
#define SOL_SAFE_GETTER_I_ SOL_ON #if SOL_SAFE_GETTER != 0
#define SOL_SAFE_GETTER_I_ SOL_ON
#else
#define SOL_SAFE_GETTER_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_GETTER_I_ SOL_ON #define SOL_SAFE_GETTER_I_ SOL_ON
@ -209,8 +221,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_USERTYPE) && (SOL_SAFE_USERTYPE != 0) #if defined(SOL_SAFE_USERTYPE)
#define SOL_SAFE_USERTYPE_I_ SOL_ON #if SOL_SAFE_USERTYPE != 0
#define SOL_SAFE_USERTYPE_I_ SOL_ON
#else
#define SOL_SAFE_USERTYPE_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_USERTYPE_I_ SOL_ON #define SOL_SAFE_USERTYPE_I_ SOL_ON
@ -221,8 +237,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_REFERENCES) && (SOL_SAFE_REFERENCES != 0) #if defined(SOL_SAFE_REFERENCES)
#define SOL_SAFE_REFERENCES_I_ SOL_ON #if SOL_SAFE_REFERENCES != 0
#define SOL_SAFE_REFERENCES_I_ SOL_ON
#else
#define SOL_SAFE_REFERENCES_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_REFERENCES_I_ SOL_ON #define SOL_SAFE_REFERENCES_I_ SOL_ON
@ -233,9 +253,18 @@
#endif #endif
#endif #endif
#if (defined(SOL_SAFE_FUNCTIONS) && (SOL_SAFE_FUNCTIONS != 0)) \ #if defined(SOL_SAFE_FUNCTIONS)
|| (defined(SOL_SAFE_FUNCTION_OBJECTS) && (SOL_SAFE_FUNCTION_OBJECTS != 0)) #if SOL_SAFE_FUNCTIONS != 0
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON #define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON
#else
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_OFF
#endif
#elif defined (SOL_SAFE_FUNCTION_OBJECTS)
#if SOL_SAFE_FUNCTION_OBJECTS != 0
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON
#else
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON #define SOL_SAFE_FUNCTION_OBJECTS_I_ SOL_ON
@ -246,8 +275,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_FUNCTION_CALLS) && (SOL_SAFE_FUNCTION_CALLS != 0) #if defined(SOL_SAFE_FUNCTION_CALLS)
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON #if SOL_SAFE_FUNCTION_CALLS != 0
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON
#else
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON #define SOL_SAFE_FUNCTION_CALLS_I_ SOL_ON
@ -258,8 +291,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_PROXIES) && (SOL_SAFE_PROXIES != 0) #if defined(SOL_SAFE_PROXIES)
#define SOL_SAFE_PROXIES_I_ SOL_ON #if SOL_SAFE_PROXIES != 0
#define SOL_SAFE_PROXIES_I_ SOL_ON
#else
#define SOL_SAFE_PROXIES_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_PROXIES_I_ SOL_ON #define SOL_SAFE_PROXIES_I_ SOL_ON
@ -270,8 +307,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_NUMERICS) && (SOL_SAFE_NUMERICS != 0) #if defined(SOL_SAFE_NUMERICS)
#define SOL_SAFE_NUMERICS_I_ SOL_ON #if SOL_SAFE_NUMERICS != 0
#define SOL_SAFE_NUMERICS_I_ SOL_ON
#else
#define SOL_SAFE_NUMERICS_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_NUMERICS_I_ SOL_ON #define SOL_SAFE_NUMERICS_I_ SOL_ON
@ -282,8 +323,12 @@
#endif #endif
#endif #endif
#if defined(SOL_SAFE_STACK_CHECK) && (SOL_SAFE_STACK_CHECK != 0) #if defined(SOL_SAFE_STACK_CHECK)
#define SOL_SAFE_STACK_CHECK_I_ SOL_ON #if SOL_SAFE_STACK_CHECK != 0
#define SOL_SAFE_STACK_CHECK_I_ SOL_ON
#else
#define SOL_SAFE_STACK_CHECK_I_ SOL_OFF
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_SAFE_STACK_CHECK_I_ SOL_ON #define SOL_SAFE_STACK_CHECK_I_ SOL_ON
@ -294,9 +339,18 @@
#endif #endif
#endif #endif
#if (defined(SOL_NO_CHECK_NUMBER_PRECISION) && (SOL_NO_CHECK_NUMBER_PRECISION != 0)) \ #if defined(SOL_NO_CHECK_NUMBER_PRECISION)
|| (defined(SOL_NO_CHECKING_NUMBER_PRECISION) && (SOL_NO_CHECKING_NUMBER_PRECISION != 0)) #if SOL_NO_CHECK_NUMBER_PRECISION != 0
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_OFF #define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_OFF
#else
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON
#endif
#elif defined(SOL_NO_CHECKING_NUMBER_PRECISION)
#if SOL_NO_CHECKING_NUMBER_PRECISION != 0
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_OFF
#else
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON
#endif
#else #else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_) #if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON #define SOL_NUMBER_PRECISION_CHECKS_I_ SOL_ON
@ -319,9 +373,18 @@
#define SOL_STRINGS_ARE_NUMBERS_I_ SOL_DEFAULT_OFF #define SOL_STRINGS_ARE_NUMBERS_I_ SOL_DEFAULT_OFF
#endif #endif
#if defined(SOL_ENABLE_INTEROP) && (SOL_ENABLE_INTEROP != 0) \ #if defined(SOL_ENABLE_INTEROP)
|| defined(SOL_USE_INTEROP) && (SOL_USE_INTEROP != 0) #if SOL_ENABLE_INTEROP != 0
#define SOL_USE_INTEROP_I_ SOL_ON #define SOL_USE_INTEROP_I_ SOL_ON
#else
#define SOL_USE_INTEROP_I_ SOL_OFF
#endif
#elif defined(SOL_USE_INTEROP)
#if SOL_USE_INTEROP != 0
#define SOL_USE_INTEROP_I_ SOL_ON
#else
#define SOL_USE_INTEROP_I_ SOL_OFF
#endif
#else #else
#define SOL_USE_INTEROP_I_ SOL_DEFAULT_OFF #define SOL_USE_INTEROP_I_ SOL_DEFAULT_OFF
#endif #endif
@ -443,16 +506,14 @@
#endif #endif
#endif #endif
#if defined(SOL_DEFAULT_PASS_ON_ERROR) && (SOL_DEFAULT_PASS_ON_ERROR != 0) #if defined(SOL_DEFAULT_PASS_ON_ERROR)
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_ON #if (SOL_DEFAULT_PASS_ON_ERROR != 0)
#else
#if SOL_IS_ON(SOL_ALL_SAFETIES_ON_I_)
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_ON #define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_ON
#elif SOL_IS_ON(SOL_DEBUG_BUILD_I_)
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_DEFAULT_ON
#else #else
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_OFF #define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_OFF
#endif #endif
#else
#define SOL_DEFAULT_PASS_ON_ERROR_I_ SOL_DEFAULT_OFF
#endif #endif
#if defined(SOL_USING_CXX_LUA) #if defined(SOL_USING_CXX_LUA)
@ -9743,9 +9804,11 @@ namespace sol {
#include <bitset> #include <bitset>
#include <forward_list> #include <forward_list>
#include <string> #include <string>
#include <limits>
#include <algorithm> #include <algorithm>
#include <sstream> #include <sstream>
#include <optional> #include <optional>
#include <type_traits>
namespace sol { namespace sol {
namespace detail { namespace detail {