Commit Graph

540 Commits

Author SHA1 Message Date
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
ThePhD
02bbe0c528 improve docs heavily 2016-11-11 12:44:34 -05:00
ThePhD
4116db8c89 Add heavy support for all things array and list and stuff 2016-11-09 07:42:45 -05:00
ThePhD
3b4dd52caf Fix is_container derp that triggered fault construction of pointer types 2016-11-07 13:52:20 -05:00
ThePhD
f8705202e2 Update single and update safe usertype checking 2016-11-06 16:34:05 -05:00
ThePhD
1c73fb054b std::cend doesn't exist in older compiler versions... 2016-11-05 23:25:46 -04:00
ThePhD
3e77a77ddc fix container usertype metatables 2016-11-05 23:04:32 -04:00
ThePhD
52f69a2653 Heavily improve documentation and add new container functions. 2016-11-05 20:08:07 -04:00
ThePhD
d863a56760 Weee, script return value tests 2016-11-02 19:00:16 -04:00
ThePhD
9836aba51d octal constants suck =/ 2016-11-01 19:24:59 -04:00
ThePhD
0a165dc5b4 Sometimes? You just don't like C++. At all. 2016-11-01 06:03:54 -04:00
ThePhD
c2c9ccf89c constexpr? More like LULexpr. 2016-11-01 05:57:48 -04:00
ThePhD
d3cb9042c3 Heey, no more submodules needed now. 2016-11-01 05:39:44 -04:00
ThePhD
1213c8959a Ditch the dependency on the optional submodule, nobody's ever gonna care about it... 2016-11-01 05:31:59 -04:00
ThePhD
c9728b7e27 do_string / do_file synonyms. I have to document all this... 2016-10-30 05:56:56 -04:00
ThePhD
0859af3203 Fix comparisons done of improper types 2016-10-30 04:40:17 -04:00
ThePhD
f896a9ea16 Pop errors off the stack if they're present. 2016-10-29 15:12:47 -04:00
ThePhD
5193db55c3 allow for not-containers to be specified
Make sure tables of various sizes are kept working
2016-10-28 04:36:04 -04:00
ThePhD
85329ca183 Mmn. Always making lots and lots of small changes. 2016-10-23 19:17:33 -04:00
ThePhD
2ac711b7f8 fix static initializer bugs from crap -- and remember to hunt down and get rid of all non-constexpr things like it in the future... 2016-10-21 17:32:27 -04:00
ThePhD
a65f795b79 ipairs and pairs improved support, folding the registration table down to avoid duplicated code 2016-10-21 07:05:58 -04:00
ThePhD
661e361b26 inline pls 2016-10-15 18:53:42 -04:00
ThePhD
391f29afb1 Oh boy, new compatibility files...! 2016-10-15 18:36:30 -04:00
ThePhD
940f44db55 Add presentation from Lua Workshop 2016
Have proper detection for numbers (even if it comes at a higher cost)
2016-10-15 18:14:19 -04:00
ThePhD
c2d219ea7d Reworked the architecture of usertype functions to include a shim table between it and the actual metatables.
This means that usertype tables visible in the code and bound to the name specified with `new_usertype` and friends will be normal tables, and those tables delegate their responsibilities to the 3 backend tables of `sol.unique_usertype<T>`, `sol.T`, and `sol.T*`. This separation allows for a few caveats for updating and overriding members of `new_simple_usertype` tables to 'just work' without any serious hassle, and to have a single point that lets up decide how to perform updates properly. It also restores an optimization we had to turn off by ham-fisting whether ot not indexing was turned on the usertype metatables themselves.

o wow wow wow it's such a nice commit message look at how organized it is
PFFFFFFFFFF.
2016-10-11 05:58:49 -04:00
ThePhD
e0e376a370 -1 size key is bad: remember to add this to presentation... 2016-10-05 20:55:40 -04:00
ThePhD
0ba4650c64 Another example, constness derp fix 2016-10-05 20:39:49 -04:00
ThePhD
009d6b0fa9 Fix protected_function shenanigans, hopefully for good. 2016-10-04 23:37:08 -04:00
ThePhD
4ac35aa8f4 sometimes, I have a dumb. Othertimes, the lua docs are sneaky and have subtle maybe-behaviors when other parts of their API never do. Sneaky, sneaky API... 2016-10-02 13:37:52 -04:00
ThePhD
23c2c6dedc weee slight fix and doc update 2016-10-01 18:19:35 -04:00
ThePhD
b05ce97247 Allllll the fixes. All the time. Mostly to make sure constructors don't fight with each other and safety is respected. And documentation updates. 2016-10-01 01:27:40 -04:00
ThePhD
6c34a2ac4f updated protected_function stuff 2016-09-30 01:42:23 -04:00
ThePhD
72a445ff6a Some minor fixes and updates 2016-09-29 03:29:48 -04:00
ThePhD
cbe599a901 Referential transparency is important. 2016-09-28 19:05:26 -04:00
ThePhD
d7b037da73 Sigh. Make sure that tuple expansion works in buggy VC++ compiler. 2016-09-26 04:02:03 -04:00
ThePhD
d88db0faff Buh. Capturing the right semantics is always hard. 2016-09-22 11:49:29 -04:00
ThePhD
3a00ce0adf Some minor fixes and DOCS AND EXAMPLES WOOoOooOOooOoo 2016-09-22 07:13:04 -04:00
ThePhD
9d52ed49ba balance that stack, goddamnit, BALANCE IT 2016-09-19 23:37:00 -04:00
ThePhD
8c9c662d97 Truly, I am a spectacular idiot... 2016-09-19 01:17:58 -04:00
ThePhD
89107d3b90 Fix crashing of simple usertypes from a previous herpderp. 2016-09-19 00:36:50 -04:00