Commit Graph

511 Commits

Author SHA1 Message Date
ThePhD
20a0b0809f
decltype(auto), let's hope it does the right thing... 2019-03-31 14:38:48 -04:00
ThePhD
26cbadc5b2
Livnig dangerously and not running the tests, just shooting from the hip.
One day I'll get this all right...
2019-03-30 23:30:59 -04:00
ThePhD
224017104a
upload and tag official stable beta 2019-03-28 23:22:36 -04:00
ThePhD
52ec50010b
Update single, make sure warnings are not there. 2019-03-23 21:50:02 -04:00
ThePhD
4aac17c602
Remove bad LLVM 2019-03-23 14:57:06 -04:00
ThePhD
a925963708
appveyor.yml updates to try and more properly capture constraints
travis.yml updates to try and more properly capture constraints
I truly dislike MSVC's inability to handle lots of using statements.
2019-03-23 12:09:51 -04:00
ThePhD
e8467334f6
Completley overhaul tests
Add unregister funcationality
Make sure clearing is stack-size-safe.
2019-03-22 16:28:17 -04:00
ThePhD
04b36f1fc1
3.0.0 official beta 2019-03-18 07:45:21 -04:00
ThePhD
b63d7af060
Add lua_table and lua_value abstractions
Improve dump handler, bytecode, and base traits
Fix tolua on bad calls, fix interop handler changes
We are now truly done with all feature requests...
2019-03-18 07:41:51 -04:00
ThePhD
70bc1113cb
Create base_traits
Improve all of the tests
This is the final featureset, now everything is frozen just for docs...
2019-03-14 16:15:43 -04:00
ThePhD
c1a8cb1dc5
Update copyright year, add dump function 2019-03-13 05:18:06 -04:00
ThePhD
466e21bf7c
omegalul MSVC 2019-03-10 11:09:52 -04:00
ThePhD
ee13a7812f
Full fixes for everything. 2019-03-09 20:57:49 -05:00
ThePhD
b6f40935c8
add new tas for override_value and update_if_empty, improve the enable_if for a bunch of field_setter stuff
perform the last breaking change with .source()
prepare for the coming release...
2019-02-16 17:27:03 -05:00
ThePhD
9c050230f3
push/pop pragma macros, wew lad 2019-02-14 04:52:30 -05:00
ThePhD
b938e42af6
SUPER DUPER UPDATE WOO 2019-02-14 02:40:57 -05:00
ThePhD
ffe77ccb3f
fix some derps that aren't caught by the tests, somehow...?
add more tests...!
2019-02-11 05:50:35 -05:00
ThePhD
b4e83ca866
attempt to improve throughput and compile times even more
change CMake to stop being such a goddamn fucking menance with the warnings and errors
try to get full /W4 clean compliance
2019-02-10 15:02:40 -05:00
ThePhD
fbf5b48dc8
void support 2019-01-28 12:33:21 -05:00
ThePhD
e1f3e5f009
cull a good chunk of SFINAE, see what results... 2019-01-28 11:32:32 -05:00
ThePhD
a2f86d88dc
optimize get/traverse_get and set/traverse_set items
consider potential optimizations for new_enum to reduce compiler churn
consider potential optimizations for proxy
2019-01-17 08:28:34 -05:00
ThePhD
5b3ca9343c
update single
update forward declaration
update container traits usage
fix vector of pair as a usertype
2019-01-13 21:46:53 -05:00
ThePhD
91faa7a014
Update single, fix more CMakeLists stuff to work with Local and Not-From-Source builds of Lua 2019-01-05 13:56:21 -05:00
ThePhD
d9f973e5cd
update packaged single 2019-01-05 05:50:07 -05:00
ThePhD
9760a400cd
testing and test matrix improvements 2018-12-23 13:18:14 -05:00
ThePhD
a6abc0a0d9
update everything 2018-12-22 15:36:42 -05:00
ThePhD
88cafb281f
improve all tests, fix all tests, and improve metatable for GCC builds 2018-12-21 01:07:05 -05:00
ThePhD
c35c66baf7
update all tests and fix all the small derps and typos 2018-12-20 01:18:07 -05:00
ThePhD
bbd5bd7fa1
Fix Linux build as best as possible while size issues still remain with MinGW. 2018-12-19 23:17:15 -05:00
ThePhD
0a9dc24f1f
first big sol3 push... tests not updated yet 2018-09-27 22:27:38 -07:00
ThePhD
e7886facda
update single 2018-08-10 20:51:13 -04:00
ThePhD
7f1c2e3ecf
committing, with signing 2018-08-04 11:59:29 -04:00
ThePhD
daa9993a3e update single 2018-08-04 11:01:38 -04:00
ThePhD
6638b300cc Update single and tag 2018-07-29 14:05:40 -04:00
ThePhD
d01d49aa7e update single 2018-07-29 13:21:32 -04:00
Orfeas Zafeiris
7181a179c8 Update single 2018-07-23 17:59:17 +03:00
ThePhD
254466eb4b add pointer() method 2018-06-27 11:34:40 -04:00
ThePhD
60ee53a429 update single 2018-06-27 07:15:56 -04:00
ThePhD
3935dc497c fix #673
fix #670
2018-06-27 07:14:02 -04:00
ThePhD
4480b7ef89 [ci skip] [skip ci] update single 2018-06-16 07:59:47 -04:00
ThePhD
968989bef7 Fix for LuaJIt issues 2018-06-15 20:24:11 -04:00
ThePhD
c6bb3c6ce5 fix all warnings on GCC and get new tests and old tests back to 100% 2018-06-15 17:33:09 -04:00
ThePhD
ccba856216 Fiinaly remember the right keyword to place for a dependent typename... 2018-06-15 16:37:44 -04:00
ThePhD
964f8e19cd typename on the right side 2018-06-15 16:03:25 -04:00
ThePhD
fd52cc1aa9 forward declare more things to make gcc/clang happier 2018-06-15 15:54:43 -04:00
ThePhD
92f3330e03 fix #668
update single
2018-06-15 15:50:51 -04:00
Alexander Hoischen
110791c75a Update Single Include Headers 2018-06-11 21:27:54 +02:00
ThePhD
ac709111e8 ensure index_adjustment is applied everywhere
add safety config everywhere
2018-05-22 15:42:38 -04:00
ThePhD
03f17d41eb ensure optional returns are un-engaged upon none/nil -- nil does NOT count 2018-05-20 15:25:50 -04:00
ThePhD
9cf393abb0 I really ought to consolidate how I handle optional, but there's optimizations I miss if I do.... bwuh. 2018-05-14 13:21:41 -04:00
ThePhD
f8ee7abe52 tfw no common_type for ternary... 2018-05-12 18:04:33 -06:00
ThePhD
db5494ee37 Fix #641 2018-05-12 09:16:34 -06:00
ThePhD
9106597663 ensure constness does not infect unique usertypes
fix #644
2018-05-12 01:57:55 -06:00
ThePhD
653c5115b5 update single 2018-05-10 05:31:48 -06:00
ThePhD
3620c4b8e1 make sure version matches so people don't get confused 2018-04-17 20:13:36 -04:00
ThePhD
8b77411f66 update single 2018-04-17 20:09:10 -04:00
ThePhD
6a5154f3b9 update single and properly point to lastest VS2015 version. 2018-04-17 16:25:38 -04:00
ThePhD
eb1771dff1 update single 2018-04-17 15:25:01 -04:00
ThePhD
eb19aab9a1 This update allows for many more definition macros and teh use of a configuration header to be combined with the single.py
Allow for configuration macros to aid in fixing #631
2018-04-17 12:29:14 -04:00
hzwar
2de6447e73 Compile fix for std::variant detection on Apple clang 9.1.0 (Xcode 9.3) (#628)
* Compile fix for std::variant detection on Apple clang 9.1.0 (Xcode 9.3)

* Update single

* Consistently check SOL_CXX17_FEATURES, SOL_STD_VARIANT

* Update single
2018-04-13 14:46:05 -04:00
ThePhD
6e970f35ac update insgle 2018-04-12 14:01:53 -04:00
ThePhD
81912b6dd4 update single 2018-04-01 21:52:29 -04:00
ThePhD
0c380da637 in place modification function there, but it won't be documented because it's a BAD IDEA 2018-03-30 04:51:29 -04:00
ThePhD
035c2f8fad [ci skip] allow for pointer properties in non-checked-args builds 2018-03-29 09:24:41 -04:00
ThePhD
0b4548bed3 allow pointers to be used with property defines 2018-03-21 17:52:28 -04:00
ThePhD
2bd1cdccf0 return_type duplication 2018-03-19 00:20:08 -04:00
ThePhD
f50d8e271f VC++ actually doesn't respect array reference return types through decltype. Kek. It's obscure, but... goodness, how does GCC and Clang get these things right consistently while VC++ keeps fumbling at it? 2018-03-18 23:41:03 -04:00
ThePhD
d14345f016 MSVC is an ass and will probably continue to be an ass for a while to come. 2018-03-17 09:09:37 -04:00
ThePhD
3f65ad43d8 Remove unused variant typedef 2018-03-11 20:12:23 -04:00
ThePhD
aad954d2c0 update single 2018-03-10 20:45:46 -05:00
ThePhD
c8bfcd2dc2 update stack docs
fix examples
do not throw std::exception directly: always use std::runtime_error, as it is the only one with a proper exception hole
2018-03-09 23:32:03 -05:00
ThePhD
560b5b2673 ᕕ༼ •̀︿•́༽ᕗ VC++ COMING THROUGH WAHAAAY ᕕ༼ •̀︿•́༽ᕗ 2018-03-06 17:36:33 -05:00
ThePhD
0fe9b160b7 update single 2018-03-05 22:56:21 -05:00
ThePhD
2f220b6eb2 update single 2018-03-04 10:57:28 -05:00
ThePhD
e8e5ddc890 fix overpop from stack_check_get tracking 2018-03-04 05:40:57 -05:00
ThePhD
ab5b417fb0 update single, change optional semantics with nullable references 2018-03-03 15:39:41 -05:00
ThePhD
2e1fcd32dd update single 2018-03-03 13:42:44 -05:00
ThePhD
cd13f2dc0d Hammer down function behavior and provide an example to show how it works 2018-03-03 13:42:13 -05:00
ThePhD
1e5c256394 specify poly as the desired type 2018-03-02 10:09:30 -05:00
ThePhD
94a63902a7 fix order of is_specialization_of, since mpark and arthur and friends convinced me of The One True Way
add workaround for VC++ /std:c++17 and /std:c++latest bugs
try to add MD/MDd flags, pray it works...
update single
2018-03-01 22:08:27 -05:00
ThePhD
9bddce66f8 Visual C++ introduced a regression in all frontends that were not /std:c++14.
Kind of tired, don't want to file the bug....
2018-02-28 19:20:20 -05:00
ThePhD
14378e7126 properly specify transcoding behavior 2018-02-24 18:50:23 -05:00
ThePhD
6b2e282ab0 oops, the logic for the define was wrong :< 2018-02-23 16:59:48 -05:00
ThePhD
b60132ef71 Fix boost/C++17 hash mismatch 2018-02-23 11:30:34 -05:00
ThePhD
12139b8cfb stop myself from derping out 2018-02-22 21:31:28 -05:00
ThePhD
32cadc0990 update single 2018-02-22 18:34:07 -05:00
ThePhD
f85a06b31d update single 2018-02-22 14:49:16 -05:00
ThePhD
6c6c89132b fix #593 2018-02-21 02:02:18 -05:00
ThePhD
a56a890adf update single 2018-02-20 11:45:51 -05:00
ThePhD
c377ecebcb more travis stuff, add missing license notice, update license year 2018-02-19 21:15:26 -05:00
ThePhD
1d0683a53e add all examples for all interop types
Implements #578
2018-02-10 16:24:17 -05:00
ThePhD
22127fa6fa woops 2018-02-04 19:55:11 -05:00
ThePhD
c9980bfc28 Add push function, update single 2018-02-04 19:23:24 -05:00
ThePhD
f2d4150934 update single= 2018-01-30 21:05:38 -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
db9c5d64c6 update single, use special handling for find_package 2018-01-23 16:18:17 -05:00
ThePhD
63ec47bf6e Make base class type checks and lookup stable across DLLs 2018-01-23 12:07:22 -05:00
ThePhD
f5764337cb purge past-the-stack access in protected function result 2018-01-20 14:31:49 -05:00
ThePhD
cbd79234d8 [ci-skip] update single 2018-01-20 13:42:53 -05:00
ThePhD
a573fa217b update for travis 2017-12-29 19:00:56 -05:00
ThePhD
c5defa6d07 update single 2017-12-28 12:37:52 -05:00
ThePhD
d05769b80e fix up examples and use build log to get neat messages 2017-12-26 08:04:54 -05:00
ThePhD
002303d52b update tests and single again
add assert.hpp for better code understanding
prepare to rewrite all the damn docs, and update the tutorials...
2017-12-25 23:27:22 -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
87b4dd6cba add forward declaration headers to sol2's auto-generated release headers for people who want to avoid "include everything" scenarios with the single header... 2017-12-09 02:52:08 -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
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
a451553131 update single with version 2017-11-21 14:35:37 -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
43dda398a0 version bump 2017-11-07 20:20:57 -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
540d322a26 update configure, tag and everything else 2017-10-26 13:03:49 -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
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
74d1ba87c9 update single 2017-10-02 17:33:14 -04:00
ThePhD
e36b9b3ab5 update single 2017-09-30 23:03:26 -04:00
ThePhD
5c9e8e2e45 is_stringable trait 2017-09-28 19:07:33 -04:00
ThePhD
e31ed4f81c [ci skip] update single 2017-09-24 16:51:14 -04:00
ThePhD
0027ce6c84 make sure default userdata_getter does not error everything horribly
update single
2017-09-24 16:04:10 -04:00
ThePhD
50f749640c update single 2017-09-23 20:26:54 -04:00
ThePhD
8f3699bea5 initializer_list support and tests, waiting for the day when we can use some kind of lua_any to store any value into Lua and thus have initializer lists become the new hot stuff 2017-09-22 18:54:49 -04:00
ThePhD
290a67134a Make sure nil_t is still available, even if nil is defined.
One day, there'll be a time when I get nearly everything right
2017-09-22 11:04:46 -04:00
ThePhD
0114882e13 force usage of lua_nil across everything and add a proper macro / feature-test for it 2017-09-22 07:30:41 -04:00
ThePhD
1b23ad8b4f attempt to silence warnings about array usage and keep a definition check for nil
add some "max size" checks in other places.
2017-09-21 21:32:52 -04:00
ThePhD
61d610bb70 make minor changes for XCode and Visual Studio Warning Level 4. 2017-09-21 19:24:21 -04:00
ThePhD
76d7195e64 test new compat mode (we only test text, but I don't really generate binary files, and it seems to play ball both ways, so...) 2017-09-16 14:18:45 -04:00