Commit Graph

579 Commits

Author SHA1 Message Date
ThePhD
30ecd7127a Tracking LuaJIT deletion bug, but it seems to be connected to the Hash Map iterator level...? Something is wrong, here... 2017-03-13 15:05:02 -04:00
ThePhD
84554c90ea VC++'s late instantiation killing me on things being used technically before they're defined, but being inside templates makes it bad... 2017-03-12 21:42:43 -04:00
ThePhD
dce8053248 Time to break everything.
Added the ability to extend all usertypes at runtime. The performance implications need to be examined closely.
variadic_args documentation was updated with the desired example demonstrating proper usage
usertype examples were updated demonstrating Lua runtime and C++ runtime updating of a usertype table
SOL_SAFE_FUNCTIONS is now part of the definitions and defined (thanks @eliasdaler)
2017-03-12 21:35:19 -04:00
ThePhD
ab9126d892 update customization points and track un-specialized structs to trigger some safe-guards as a back-compatible safety net 2017-02-20 18:07:02 -05:00
ThePhD
b7b63668c8 Ensure construction of special types in simple_usertype is working, and for regular usertype as well. 2017-02-20 03:44:41 -05:00
ThePhD
dde4aa64fc simple_usertype now responds with nil on bad lookups and sets items into place properly when new_index'd 2017-02-19 05:00:11 -05:00
ThePhD
a9cfe4b980 Fix ability to use call constructors for simple usertypes in a more systematic and thorough fashion (still some missing holes, but unlikely to ever encounter)
Add tests to make sure it never happens again
2017-02-18 21:59:31 -05:00
ThePhD
23e3f2c26d make sure member functions for simple usertypes propogate their desired type. 2017-02-17 05:46:39 -05:00
ThePhD
37420dcdc0 Documentation update about functions and new typedefs. 2017-02-16 02:05:49 -05:00
ThePhD
85194e0135 Fix leak issues and some ordering in state(view) move operations. Closes #336. 2017-02-15 05:42:44 -05:00
ThePhD
fe8b1c1c10 Bug in not properly keeping the observed valid table on the stack. 2017-02-01 06:54:30 -05:00
ThePhD
8d6f304bad Update the name table and make sure there are pairs and next metamethod entries. 2017-02-01 06:29:45 -05:00
ThePhD
c7deb82535 Improve performance by making wstring_convert objects static. Closes #326
Temporary warnings against alignment padding nonsense. Closes #325
Still need to test #324 and find out what's wrong with #327
2017-01-30 21:40:58 -05:00
RaptorFactor
c58d27e58d Work around clang-cl compilation issue. 2017-01-26 03:32:17 -08:00
Kim Byungsun
30feacb04e Fixed typo: luaxlib.h -> lauxlib.h 2017-01-14 07:44:23 -05:00
ThePhD
66ad189797 add functionality to have functions properly detected and the amount shifted over properly based on being a call constructor or not 2017-01-09 23:25:28 -05:00
ThePhD
490194f767 allow va_args to work with overloading, albeit things can get... bad, with it. Need to observe this more to make sure things don't go poorly. 2017-01-09 16:38:23 -05:00
ThePhD
658a11a2be forgot return type: update single 2017-01-07 01:11:03 -05:00
ThePhD
3baa99f941 thread and state awareness in all sol lua types 2017-01-07 00:40:44 -05:00
ThePhD
010b6bb101 allow for switch to change Lua configuration and build with assumptions to C++ handling 2017-01-02 09:36:04 -05:00
The Phantom Derpstorm
a2691c6570 Merge pull request #304 from davedissian/develop
Correct the LuaJIT 2.1.0 condition
2016-12-26 14:01:08 -05:00
ThePhD
26b85c8136 Make sure resolve works and provide some protection against deleting the handler that originates from a specific sol::state. sol::state_view users will be left out in the dark, though. 2016-12-26 13:50:08 -05:00
David Avedissian
9382ceb1b5 Correct the LuaJIT 2.1.0 condition 2016-12-25 13:21:13 +00:00
ThePhD
3aa42c5db8 update single 2016-12-16 05:31:32 -05:00
FYP
b1af00f048 fix thread_status::dead value for luajit 2016-12-16 12:20:28 +03:00
ThePhD
428adf706f optional impl alignment requirements?? Thanks, Emscripten. 2016-12-16 01:00:49 -05:00
ThePhD
e1329d244a Fix alignment issues with optional implementation
Update single.py to look at toplevel file rather than listing out all base sources
string_shim didn't have the proper header
Improve gitignore
2016-12-16 00:31:45 -05:00
ThePhD
ad010adcad Goddamn unused parameters... 2016-12-10 05:56:10 -05:00
ThePhD
f4f3bffe2f Oh boy, more simplicity functions...! 2016-12-10 01:19:23 -05:00
ThePhD
edeb81a7e1 Add registry constructors to tug things right out of the registry, and add a main_thread getter to aid in Joynet dev 2016-12-10 00:25:25 -05:00
ThePhD
16152c7faf Make various arguments push based on the Lua state passed, not on the Lua state they have (avoids a small class of errors and makes the panic function call tiself more regularly). 2016-12-06 10:51:14 -05:00
ThePhD
7628c635bd Memory leak fix! 2016-12-05 12:03:15 -05:00
ThePhD
d0a36c9657 objc define to keep code clean on that platform 2016-12-03 07:33:18 -05:00
ThePhD
20b951d551 we choose nil serialization for bad stack pushes 2016-12-02 05:47:24 -05:00
ThePhD
0d43a6f22b fix const-correctness error in detection of is_container type 2016-11-29 12:51:21 -05:00
ThePhD
433e34cd9b as_args and threading API cleanliness. 2016-11-26 13:58:06 -05:00
ThePhD
7b63057ba8 PRAISE BASED EEVEE 2016-11-26 03:32:28 -05:00
ThePhD
289ded358c -Wshadow and -Wconversion are kind've dumb 2016-11-25 20:47:15 -05:00
ThePhD
49a0f71272 library fixes 2016-11-23 02:55:25 -05:00
ThePhD
b40f895fd4 Fix double-delete crash that could also be affecting @IronsDu 2016-11-23 02:39:52 -05:00
ThePhD
97cafbaadd Default error handler function for protected_function 2016-11-17 23:58:24 -05:00
ThePhD
57c933cc9b bitfield example and link in docs 2016-11-15 22:45:34 -05:00
ThePhD
fe162b9643 make sure protect works as advertised 2016-11-15 04:39:42 -05:00
ThePhD
b2d137f65f change resolve to behave better with crappy clang 2016-11-14 21:39:26 -05:00
ThePhD
f5930bfa48 constexpr resolve 2016-11-14 13:58:55 -05:00
ThePhD
1461ab780c Fix an idiot derp in the code
and stop having sleep attacks...
2016-11-14 13:42:55 -05:00
ThePhD
22e17eb9fd Correct spelling is hard. 2016-11-13 04:21:24 -05:00
ThePhD
fbc0fc5f93 Properly word the exception documentation and made some proper links.
Update single and use proper wording.
2016-11-13 03:48:22 -05:00
Anand Aiyer
6e6cb675e2 SOL_LUAJIT_FULL_INTEROPERABILITY - If you are using a platform and
compiler that has full c++ exception interoperability
(http://luajit.org/extensions.html#exceptions), define
SOL_LUAJIT_FULL_INTEROPERABILITY. This will prevent sol from catching
(...) errors - in platforms & compilers than have full c++ exception
interoperability Lua errors can be caught with catch (...) in C++ - in
these cases sol inaccurately prevents Lua errors from being propagated
correctly.
2016-11-13 12:02:29 +05:30
Anand Aiyer
951b821272 missing ';' when SOL_NO_EXCEPTIONS is enabled 2016-11-13 11:22:54 +05:30