Commit Graph

771 Commits

Author SHA1 Message Date
ThePhD
f48ba8b101 Add shiny new unicode methods to replace shitty codecvt. It needs some work to be safer but this will work for now
string_view to avoid allocations added to a few more places
stack proxy's unused members were removed
container_traits now has the index_adjustment function added onto it.
Fixes #571
Fixes #574
Fixes #575
2018-02-03 01:29:06 -05:00
ThePhD
49d99d1b48 make sure right overload of create is called to make the target table. 2018-01-30 21:05:08 -05:00
ThePhD
165b387ddb Change bind_traits to work better for 32-bit __stdcall 2018-01-30 11:02:46 -05:00
ThePhD
54003df3c9 as usual, herpin' that derp with the spelling errors... 2018-01-28 22:58:56 -05:00
ThePhD
57681ab4cd This attempts to be more thorough with the validations of the test, avoiding throws wherever possible to help reduce the error surface for debugging x86 builds (which, strangely enough, are not erroring in the same places that appveyor is erroring in...)
Need to begin wrok to fix wstring_convert and replace it with some decent UTF conversion algos. It's surprisingly difficult tof ind such...
Fixes #572
Fixes #569
Fixes #567
2018-01-28 22:21:13 -05:00
ThePhD
143c98450a update single, add new tests
fixes #564
2018-01-24 01:10:35 -05:00
ThePhD
83f4b4aaa0 fix unused parameter
fix cmake bad copy
2018-01-23 19:50:49 -05:00
ThePhD
63ec47bf6e Make base class type checks and lookup stable across DLLs 2018-01-23 12:07:22 -05:00
Ilya Averyanov
6ae78d9ed8 Use std::bitset instead std::array of bool 2018-01-22 13:41:21 -05:00
ThePhD
f5764337cb purge past-the-stack access in protected function result 2018-01-20 14:31:49 -05:00
ThePhD
1a64ba0fe5 Improve the docs, set up LuaJIT, and try to figure out why we can't build a DLL as an external projcet target with LuaJIT... 2018-01-19 15:03:22 -05:00
ThePhD
4378747f6f unused lambda parameter warnings 2018-01-10 08:43:16 -05:00
ThePhD
71963f9678 Try to always use the dedicated library built for the docker image by the LLVM team, otherwise everything goes to hell.... 2018-01-10 08:40:37 -05:00
ThePhD
44e87cedda [ci skip] Prepare travis and docker for pulling images: just need to build images... 2018-01-07 10:28:05 -05:00
ThePhD
732b4bd700 add new tests for unqualified returns through as_nested/as_table 2017-12-28 12:11:12 -05:00
ThePhD
6d2100e814 Prepare for full appveyor build.
Add abort_clean so that CI does not get stuck on a message box that can never be answered
alignment rules do not apply to stack variables, so the tests cannot have the alignment check in the destructor: only for memory pushed into and coming straight out of Lua
2017-12-25 11:44:04 -05:00
ThePhD
0e19156d52 update everything for the new cmake build, prepare for new .travis.yml and new appveyor.yml
Add name of project at top of license
fix container_traits with respect to boost::property_tree: Fixes #554
fix as_table with a vector of tuples (forward_get ignored constness): Fixes #552
2017-12-20 04:58:50 -05:00
Ilya Averyanov
465c0ff502 Use stack::push to push new_table in basic_table_core 2017-12-20 03:58:25 -05:00
ThePhD
c0660b454c fix multiply-declared forward declaration values
transition to CATCH2 (no changes really)
fix diagnostic printout for single.py
update ignores
update CMake to download CATCH single
update single
2017-12-11 12:31:30 -05:00
ThePhD
e06d2fb581 add single, add examples 2017-12-10 15:56:49 -05:00
ThePhD
c3c7f42d91 update cmakelists for new tests
fix problematic macro expansion issues
2017-12-10 01:34:48 -05:00
ThePhD
5f688537e0 stack_aligned_function cannot be influenced by SOL_SAFE_FUNCTION: it has different semantics and thus needs to remain unsafe. 2017-12-08 01:22:22 -05:00
ThePhD
36b8d50e27 I keep forgetting very simple things... 2017-12-07 22:34:51 -05:00
ThePhD
a2034bcc1c update single
prep for next version
2017-12-07 22:12:43 -05:00
ThePhD
399300fa6e add all safety and feature test macros, and improve feature safety definitions and configuration defines 2017-12-07 21:46:43 -05:00
ThePhD
ec020048fb i don't like you either std::array so lets agree not to be friends 2017-12-07 09:36:12 -05:00
ThePhD
a99ea97eb7 initializer problems for arrays are literally the worst part of std::array 2017-12-07 09:16:56 -05:00
ThePhD
a86e9ee62d update examples and fix error_result returns 2017-12-07 09:04:19 -05:00
ThePhD
7193115e24 fix destructor semantics of tests (fixes old iterator debug level problems)
Closes #361
add defines for #543
2017-12-07 08:24:50 -05:00
ThePhD
fe8e2245db add CXX backdoor for predictable behavior 2017-12-01 18:47:22 -05:00
ThePhD
a8b2c257da fix bad thread status 2017-11-29 13:34:54 -05:00
ThePhD
a0de11a773 add coroutine guard
update version
add donation link
2017-11-21 14:33:27 -05:00
ThePhD
4256c07ee0 error handling improvements
update single
2017-11-17 16:54:42 -05:00
ThePhD
4a39020df9 macro-proof the library 2017-11-17 07:20:17 -05:00
ThePhD
fa912a57f6 add cstdint header to get SIZE_MAX 2017-11-17 07:07:56 -05:00
ThePhD
6738ceedae finally fix handling of exceptions, pray to the Lord it works 2017-11-11 18:33:56 -05:00
ThePhD
2d31d84070 attempt to wrangle exception handling on multiple systems 2017-11-11 07:42:14 -05:00
ThePhD
2203c1f64f Overhaul examples
Overhaul docs for examples
Overhaul function_result and protected_function_result proxies
2017-11-09 17:41:46 -05:00
ThePhD
10b1bb04a9 formalize unsafe_function_result
add index-based getter to function_result
add safety checks for double deleters and other things of that nature
2017-11-07 20:19:36 -05:00
ThePhD
9a0b5ef34a fixed ipairs swap bug 2017-10-30 14:38:16 -04:00
ThePhD
882f337c48 vet propagation handlers 2017-10-26 13:15:02 -04:00
ThePhD
d107cb8cc9 allow final classes to be used
improve error reporting for stack checks
2017-10-26 12:54:30 -04:00
ThePhD
8811a268a2 improvement to how handling of safe exceptions are done 2017-10-20 20:59:52 -04:00
ThePhD
3ee36c7d2e fix proxy compare
try to silence some really dumb PVS STudio warnings
2017-10-16 19:28:43 -04:00
ThePhD
475b285347 update compat layer 2017-10-04 08:36:25 -04:00
ThePhD
8f007074ff I REMEMBER NOW 2017-10-03 10:46:26 -04:00
ThePhD
c5505c234a I'm not the smartest. 2017-10-03 08:26:23 -04:00
ThePhD
3660aec56e continue to analyze alignment issues 2017-10-03 08:11:48 -04:00
ThePhD
73484bf8e9 add smaller environment example that's easier to process
vet entire framework for aligned reads/writes of memory for userdata
update documentation, links and tutorials accordingly
2017-10-02 17:32:58 -04:00
ThePhD
228df2630d apple platforms use XSI-style strerror_r 2017-09-30 23:00:40 -04:00