Commit Graph

555 Commits

Author SHA1 Message Date
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
ThePhD
2aecb11e97 update single 2017-09-14 08:51:12 -04:00
ThePhD
1fc00278d5 repair all constructors, expand type recognition 2017-09-14 08:45:44 -04:00
ThePhD
ed341e00aa clang error on some proxy stuff 2017-09-14 00:46:38 -04:00
ThePhD
8d828ac47b implement main_reference as per @eliasdaler's suggestions 2017-09-14 00:35:40 -04:00
ThePhD
72143a494b don't forget to pop! 2017-09-13 11:45:31 -04:00
ThePhD
a068c4e6e6 update single and bump version number for new release 2017-09-13 11:37:28 -04:00
ThePhD
7ff3a390b1 final lua_xmove fixes 2017-09-13 11:29:32 -04:00
ThePhD
dcff5cdaa0 re-implement xmove implicit transfers and hope it works proper this time 2017-09-13 10:20:24 -04:00
ThePhD
5816c6c34b .clang-format the crap out of everything, I guess...! 2017-09-13 02:46:56 -04:00
ThePhD
e3bd984062 cannot do automatic lua_xmove because of state differences 2017-09-12 22:01:29 -04:00
ThePhD
0325e27454 update single and add unused parameter checks to thread 2017-09-12 19:52:09 -04:00
ThePhD
8643dec9e5 with the xmove constructors, we finally are forced to do safety checks. 2017-09-11 16:44:02 -04:00
ThePhD
074b9ae655 add xmove constructors for function, (light )userdata, table, reference and object
add additional coroutine example
improve traits
add tests for thread transfers
update single
2017-09-11 16:12:23 -04:00
ThePhD
85c81f618c ignore test files
fix using wrong mode in the improper place
2017-09-11 13:25:05 -04:00
ThePhD
ac849a54c7 add compat53_ prefix where appropriate
make sure all checking macros define to 0 if not defined
make sure to vet use of `fsopen` on Windows since it it may or may not lock: use non-locking security version by default if possible
2017-09-11 13:15:27 -04:00
ThePhD
b4c1ab0915 add f and update single 2017-09-11 11:42:11 -04:00
ThePhD
7a29676633 update implementation of luaL_loadfilex 2017-09-11 11:31:18 -04:00
ThePhD
5fe73be5b5 use sizeof(buf), and update single 2017-09-10 12:28:39 -04:00
ThePhD
b38a382b03 fix compat loadfilex issues and investigate luajit completely 2017-09-10 12:08:43 -04:00
ThePhD
7aca8ac8cd fix macro definitions to define to 0 when not explicitly defined and requirements are not met
macro checks now used defined() plus an is-truth check to see if its valid
fix void return for declaration but int return for definition of luaL_loadbufferx and luaL_loadfilex
update macro style to be similar to the rest of the library
fix comment styling
2017-09-10 11:02:47 -04:00
ThePhD
ae07a5dd67 fix unused parameter warnings using (void)
make sure signatures of macro declarations match
2017-09-10 10:30:30 -04:00
ThePhD
2ca0393a94 hunt down all uses of the k variants of lua_pcall and lua_call 2017-09-10 04:11:30 -04:00
ThePhD
232abab96a EXPERIMENTAL DO NOT PULL
using new compatibility headers and testing on the tests (works on VC++ Lua 5.3 and LuaJIT so far)
2017-09-09 21:38:13 -04:00
ThePhD
d80748e6bb fix raw/global parameter swapping
prepare for compat changes
2017-09-07 00:51:35 -04:00
ThePhD
30c7e40f08 ipairs for array types too 2017-09-06 16:50:27 -04:00
ThePhD
adff0ccbce one day, i'll make a commit and it'll work first try 2017-09-05 23:06:02 -04:00
ThePhD
fc91147edc fix errors 2017-09-05 21:07:33 -04:00
ThePhD
a11e127d4d update single and remove traits from the right place properly 2017-09-03 09:52:51 -04:00
ThePhD
1f64a7f1e3 update single 2017-09-03 03:07:40 -04:00
eox
dd115145f4 Remove duplicate 2017-09-03 03:06:20 -04:00
ThePhD
0d48e65ad1 update single and ver 2017-08-31 21:05:30 -04:00
ThePhD
54bcda140c upgrade checkers and handlers to take a semi-optional "reason" type (const char* c-string desired)
add constructor_handler in same vein of handlers
add argument_handler in same vein of handlers
rewrite env_t checkers
2017-08-31 20:47:09 -04:00
ThePhD
3549bfa8ae android fixes, wee? 2017-08-30 16:16:48 -04:00
ThePhD
dea0ec0a8a update single and properly group tests 2017-08-28 09:38:30 -04:00
ThePhD
3a4e74d316 fix clang errors on forward declarations 2017-08-27 02:11:03 -04:00
ThePhD
ec34e2ca96 inline iiiiiit 2017-08-27 00:41:10 -04:00
ThePhD
a39679293c add constructors and assignment operators for protected function results and the like
improve documentation about saving compilation time and space
add docs about the two `script_..._error` functions
update single
2017-08-27 00:05:35 -04:00
ThePhD
d98155cd22 update examples and documentation, proof typing for user 2017-08-24 14:57:28 -04:00
ThePhD
92a6fb8c11 update all the examples
fix implicitly convertible function pointers from classes using `call_detail`'s `lua_call_wrapper`
specificaly add documentation for working with `std::function`
2017-08-24 14:39:02 -04:00
ThePhD
e4c3ded4b2 update table documentation and force traits not to use a deleted destructor -- rather, default it according to what it inherits 2017-08-22 10:53:46 -04:00
ThePhD
7164a8a30a update single 2017-08-21 16:23:19 -04:00
ThePhD
0c9d567d0a "automatic usertypes" are now applied everywhere, regardless of what happens
new sol::filters (currently undocumented)
new gc tests, new plain_type tests
core abstractions over usertypes streamlined
SOL_STRINGS_ARE_NUMBERS triggers added
update single
2017-08-21 15:25:43 -04:00
ThePhD
488edd9cd1 More MinGW fixes because Thanks MinGW SeemsGood 2017-08-14 10:00:17 -04:00
ThePhD
9b1c70cdf8 jit should be opened with a non-global name of "jit". 2017-08-13 20:40:32 -04:00
ThePhD
3a12435b17 yaaay, mingw..... 2017-08-13 13:24:59 -04:00
ThePhD
769faeec64 e.e weak standards suck 2017-08-13 13:17:04 -04:00
ThePhD
5683216e26 thread_local weee 2017-08-12 09:42:44 -04:00
ThePhD
b81483a406 shift travis test to run the luaJIT on the most updated
block windows macro crap
update single
2017-08-11 22:27:05 -04:00
ThePhD
023e23f9a4 update single 2017-08-11 18:26:13 -04:00
ThePhD
7af8b4e80a make sure tests don't throw where possible
edit stack checks
update container_usertype_as_container examples
2017-08-11 18:12:13 -04:00
mrgreywater
372db6f6ab large integer 2017-08-11 11:39:46 -04:00
ThePhD
5e109c2c37 clang keeps complaining about overload issues... 2017-08-11 10:36:11 -04:00
ThePhD
4f7f1af515 trying to pin this error down... 2017-08-11 10:21:15 -04:00
ThePhD
644a5c549b modifying tests to find out where crash is... 2017-08-11 09:59:42 -04:00
ThePhD
e0f6b636f1 now we start making a half-dozen commits trying to appease the various forms of clang++ and g++ 2017-08-11 09:40:56 -04:00
ThePhD
b1f7d81acb immunize as_table from std::reference_wrapper and pointer types. 2017-08-07 15:10:05 -04:00
ThePhD
c4b13b2b73 modify table push operations 2017-08-07 14:54:17 -04:00
ThePhD
c8728af5b5 throwing is unreliable... sigh 2017-08-07 14:22:56 -04:00
ThePhD
6eaa277860 bootstrap update to link pthreads, on top of container_traits improvement because of clang++ bounds-checking 2017-08-07 13:58:06 -04:00
ThePhD
092fec7afb improve traits 2017-08-07 08:47:17 -04:00
ThePhD
b86d90f0e5 std::cend doesn't exist in C++11
remove unused variables detected by clang and g++
appease the parenthesis monster that was put into g++ 5.0
2017-08-07 02:27:08 -04:00
ThePhD
ca685e01c9 gcc plagues me , and will continue to, for a while to come
BUT IT WOOORKS!
2017-08-07 02:07:21 -04:00
ThePhD
50040dec36 update single, prepare for tests 2017-08-05 19:35:16 -04:00
ThePhD
16fc7d87ff update single 2017-07-09 19:05:32 -04:00
ThePhD
48fc90bacb update single 2017-07-09 14:03:37 -04:00
ThePhD
504f49f3c7 update state to use default handler 2017-07-04 04:41:32 -04:00
ThePhD
aea873a485 update single 2017-07-01 11:04:16 -04:00
ThePhD
1a6937e24e Revert previous change of not pushing nil when we encounter a nullptr from special usertypes. If people want to check, they'll need to use optional or a raw pointer: messing with the raw usertype can also lead to some surprising problems, so we don't need to specialize for that use case. 2017-06-30 18:18:25 -04:00
ThePhD
af2136ba00 Closes #431
If only I had a test that took a unique_ptr as a second argument. RIP.
2017-06-26 10:10:47 -04:00
ThePhD
13370e7e42 more constructors PogChamp 2017-06-24 10:20:07 -04:00
ThePhD
17271c84cb BREAKING CHANGE: std::pair for regular containers that are not marked as as_table_t or as_nested will now behave like regular containers and not force themselves to be key-value pairs. table-style serialization is still unaffected. 2017-06-23 18:07:24 -04:00
ThePhD
6b34a15d68 it would help if I was not blind 2017-06-19 23:06:57 -04:00
ThePhD
5468ab8b4e Let's hope we didn't break shit... 2017-06-19 23:04:23 -04:00
ThePhD
5363a63de0 g++ sometimes chokes on parsing certain combinations of characters because of disambiguation rules 2017-06-17 00:52:02 -04:00
ThePhD
b811e73b90 who knew noexcept proofing would be so hard...? And there's so many places it could be activated in...! 2017-06-17 00:43:26 -04:00
ThePhD
11916a7c72 add noexcept function type barriers and guards
noexcept-proof function call trampolines
add noexcept tests to ensure its being checked
TODO: check g++ 7.1 builds when using -std=c++17 ...
2017-06-16 18:43:40 -04:00
ThePhD
4f959c9a41 update single 2017-06-15 01:24:53 -04:00
ThePhD
85620df63c new checker for unique_usertype to ensure type safety, when SOL_CHECK_ARGUMENTS or a protected tag is used to protect a function 2017-06-13 16:34:18 -04:00
ThePhD
42253cadfb guard against is_integral accepting booleans as integers 2017-06-12 10:45:51 -04:00
ThePhD
d8f6127bf8 boosted pragmas 2017-06-07 12:53:24 -04:00
ThePhD
02110a5361 update single with newest version
Fixes #414
FIxes #419
2017-06-07 12:36:35 -04:00
ThePhD
661386c384 revert codecvt fix for MinGW v7 and greater
add docs about compiler support
add notes about compilation issues
update single
2017-06-07 12:33:59 -04:00
ThePhD
ea895b4338 hard errors for container usertypes if SOL_CHECK_ARGUMENTS is defined.
otherwise, as usual, we assume you know what you're doing
2017-06-03 06:25:06 -04:00
ThePhD
51245a9e7b go to hell, gcc and clang 2017-05-29 13:06:37 -04:00
ThePhD
fd8e2df92e fix some semantics for container usertypes, their iterators, and how they push their value types (to cope with crappy input iterator "containers")
add better handling for `readonly` to prevent bugs from `const`-ifying the return value of a member variable (e.g., unexpected copy semantics)
add more tests and add a few more handlers for new readonly type
fix simple_usertype_metatable's handling of newindex and index when not at the top level
2017-05-29 10:32:37 -04:00
ThePhD
c6d11a2bac fix index and newindex semantics on simple_usertypes
we do not have to hit the metatable by-name since we go to special lengths to ensure we have a simple usertype table we can use
2017-05-28 19:14:18 -04:00
ThePhD
2393d0bcfd update single 2017-05-20 20:03:28 -04:00
ThePhD
5ff394ae0d use the copy assignable trait, even if that's not exactly what we're going for... 2017-05-16 20:20:59 -04:00
ThePhD
51d6f6fa54 You would think that we'd have accounted for this earlier...
Fixes #405
2017-05-16 06:12:28 -04:00
ThePhD
34b81bef6b Handle qualified name failures of VC++, where using templates do not match the fully qualified names of what they alias to (Thanks, VC++) 2017-05-15 10:41:50 -04:00
ThePhD
86e2de297d update single, ensure unused variables are axed 2017-05-09 13:31:44 -04:00
ThePhD
8efafca46a [ci skip] update single, bump version 2017-05-09 13:27:23 -04:00
ThePhD
c7237806ef add a new example, add a note, adjust for LuaJIT Beta3 and beyond (hopefully it doesn't flip its crap: will have to warn suers....) 2017-05-07 10:16:47 -04:00
ThePhD
5bc5def14d update single 2017-05-04 03:18:46 -04:00
ThePhD
fc3e7c40f3 static properties work as intended, I guess 2017-04-25 19:44:53 -04:00
ThePhD
c124d51353 Fix #398 by ensuring proper usertype propagation. 2017-04-20 20:27:32 -04:00
ThePhD
3d5f80e35a Fix bad tag for clang 2017-04-19 15:29:26 -04:00
ThePhD
a3d6f8044c working stuff!~ 2017-04-19 13:00:47 -04:00
ThePhD
de7d7e8da5 update versions 2017-04-18 20:26:35 -04:00
ThePhD
2acc8bee14 get_environment, documentation updates, and tests 2017-04-18 20:23:20 -04:00
ThePhD
36cc7f2863 crush the stack on final error when throwing to prevent 'leaks' in bad cases 2017-04-09 19:37:45 -04:00
ThePhD
a6e03ac214 tfw you break everything 'cause you're bad 2017-04-09 13:03:41 -04:00
ThePhD
2df532f79b There was a leak when running scripts and catching errors, where she didn't properly clean up the stack. 2017-04-09 12:04:57 -04:00
ThePhD
814562260d Fixes #394 2017-04-08 08:25:49 -04:00
ThePhD
28fff10637 Well, that bug was annoying to track down, but it was from the single.py script. This fixes #392 2017-04-06 21:15:22 -04:00
ThePhD
8c94cb730b Fix static initialization order fiasco with meta_function_names 2017-04-04 16:16:22 -04:00
ThePhD
7fa7f0f2e9 updoot single 2017-04-02 22:39:20 -04:00
ThePhD
f4434393ce add single 2017-04-02 16:30:14 -04:00
ThePhD
fb06c8a754 Fix slight error when error handler was called and the result wasn't properly moved. 2017-03-31 22:39:16 -04:00
ThePhD
59b196a1db add a new kind of error handling script call, updating docs and examples 2017-03-31 17:38:04 -04:00
ThePhD
4094ba3e7a New feature: nested getter for complex nested tables, plus docs and example 2017-03-30 14:11:43 -04:00
ThePhD
92d31b39b7 update single 2017-03-30 04:21:11 -04:00
ThePhD
b835e7d2c7 update Unreal's check mechanism 2017-03-26 11:28:32 -04:00
ThePhD
e27922e844 Fix a latent herpderp from when I added new constructors to protected_function that resolves an ambigious implicit conversion. 2017-03-25 20:28:22 -04:00
ThePhD
3342e65b38 fixes to a lot of tests and proper subclassing for internal metatable data and work done to all of the usertypes to make them behave as expected 2017-03-23 21:13:46 -04:00
ThePhD
7c29964339 allow personal indexing function to catch rewrites to itself in usertypes statically and dynamically 2017-03-23 10:19:23 -04:00
ThePhD
9daf52e8df update single 2017-03-22 07:54:19 -04:00
ThePhD
8938c54404 update version, update single 2017-03-21 16:56:25 -04:00
ThePhD
4b58b4ace3 update single 2017-03-19 20:58:35 -04:00
ThePhD
42aa55db8f update single 2017-03-16 16:01:42 -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
889a45d0b3 update single 2017-02-20 03:45:47 -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
295bc3a911 update single 2017-02-18 21:59:53 -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
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
38ba4415b0 update version and single 2017-01-07 00:46:16 -05:00
ThePhD
764b2ad7b2 thread and state awareness: update single 2017-01-07 00:42:18 -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
ThePhD
77a7bf12a0 update single 2016-12-26 14:02:32 -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
ThePhD
3aa42c5db8 update single 2016-12-16 05:31:32 -05: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
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
c6110e5711 update single 2016-12-06 11:09:13 -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
7bef50d460 update single 2016-11-29 12:51:42 -05:00
ThePhD
a9a32d1b56 update single 2016-11-26 14:05:18 -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
320276dabf update single 2016-11-18 00:06:12 -05:00
ThePhD
57c933cc9b bitfield example and link in docs 2016-11-15 22:45:34 -05:00
ThePhD
54608201fc Stage single 2016-11-15 04:40:07 -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
98cf1a9e9a update single 2016-11-13 04:23:06 -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
ThePhD
f16a9f4ed5 update single 2016-11-09 07:46:08 -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
34fe8a1ace update single 2016-11-05 23:43:21 -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
8c8c7d1ee1 update single 2016-10-30 05:59:37 -04:00
ThePhD
0859af3203 Fix comparisons done of improper types 2016-10-30 04:40:17 -04:00
ThePhD
76cae575e8 update single 2016-10-29 15:13:25 -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
31fe82fc2d update single 2016-10-23 19:29:48 -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
8c3ae42137 update single 2016-10-21 07:06:43 -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
d315edefbf Update single. 2016-10-11 06:53:23 -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
d51db7d23d [ci-skip] Unreal 4 checks 2016-10-05 00:59:53 -04:00
ThePhD
009d6b0fa9 Fix protected_function shenanigans, hopefully for good. 2016-10-04 23:37:08 -04:00
ThePhD
dd031613a8 update single 2016-10-02 18:24:33 -04:00
ThePhD
c77f1a26f5 Boy, these compilers SUCK. 2016-10-01 02:56:31 -04:00
ThePhD
72f39d83c7 optional update and single update, because THANKS GCC 👍 2016-10-01 02:31:11 -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
ca28f8577e update single 2016-09-30 01:42:46 -04:00
ThePhD
471b5870e2 update single 2016-09-28 19:10:36 -04:00
ThePhD
d7b037da73 Sigh. Make sure that tuple expansion works in buggy VC++ compiler. 2016-09-26 04:02:03 -04:00
ThePhD
508d21c842 Why oh why... 2016-09-22 12:16:52 -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
77a1ce76b5 update single 2016-09-19 23:40:50 -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
ThePhD
1593ca00af eat a dick gcc 4.9 2016-09-17 22:39:21 -04:00
ThePhD
1dfeb1dc7c i hate old tools 2016-09-17 22:27:28 -04:00
ThePhD
132ff87fbc update single 2016-09-17 22:17:03 -04:00
ThePhD
3df64718ad update everything 2016-09-14 00:10:25 -04:00
ThePhD
0e56783de9 Bark. I always forget things. 2016-09-14 00:02:15 -04:00
ThePhD
34d844a06f gdi gcc, catch that shit -- update single 2016-09-13 12:53:59 -04:00
ThePhD
22d5a70c25 [ci skip] upgrade single 2016-09-13 12:38:13 -04:00
ThePhD
5dface25fb fix problem with instantiations of abstract classes in optional reference 2016-09-10 20:59:12 -04:00
ThePhD
1bd86c4dd7 [ci skip] update single 2016-09-04 11:42:53 -04:00
ThePhD
431977a568 herpin' that derp 2016-09-01 09:02:50 -04:00
ThePhD
f2667827ca single header file, head forward 2016-09-01 08:50:48 -04:00
xujh
6791d6ebf2 change std::snprintf to snprintf for android compile 2016-09-01 12:02:41 +08:00
ThePhD
0d226e183f [ci skip] update single 2016-08-30 18:16:45 -04:00
ThePhD
5093f61615 Attempt to fix #119 by using less-powerful C++11 features and praying for the best
Fix #205
Partially address #204 (will need to do more -- perhaps add an automatic-conversion shim?)
2016-08-30 18:09:42 -04:00
ThePhD
5b5d1e9ca6 MIGHT AS WELL. 2016-08-27 08:45:37 -04:00
ThePhD
0aca322f3f [ci skip] update single 2016-08-25 12:51:36 -04:00
ThePhD
0f8602dc37 [ci skip] proper single 2016-08-24 12:24:47 -04:00
ThePhD
16cd699208 [ci skip] relevant changes to docs 2016-08-24 12:22:51 -04:00
ThePhD
0c5d73b67a [ci skip] update info 2016-08-24 09:17:26 -04:00
ThePhD
1e62e3cde1 [ci skip] update single 2016-08-24 08:40:35 -04:00
ThePhD
ffe6e79f97 [ci skip] single update 2016-08-22 23:43:12 -04:00
ThePhD
2640f670b6 better tests, wee 2016-08-21 22:17:19 -04:00
ThePhD
060d450f68 [ci skip] update single 2016-08-21 19:25:20 -04:00
ThePhD
6243cbe103 push_reference should respect unique usertypes 2016-08-21 19:24:26 -04:00
ThePhD
5f036adf48 [ci skip] Update single 2016-08-19 21:43:58 -04:00
ThePhD
fd657ea249 qq clang pls 2016-08-19 21:38:19 -04:00
ThePhD
e31ed71006 Add hinting optimization to arrays 2016-08-19 21:08:03 -04:00
ThePhD
1ae78e1b54 High performance iteration for arrays 2016-08-18 23:51:41 -04:00
ThePhD
c8ea9f7638 [ci skip] update single 2016-08-17 16:02:29 -04:00
ThePhD
8e387a269b [ci skip] update single 2016-08-17 15:55:36 -04:00
Kevin Brightwell
60d56be14c Update single.py to always use '/' and with prev commit 2016-08-17 14:29:37 -04:00
Kevin Brightwell
366937830c Fix #180 2016-08-17 14:29:21 -04:00
ThePhD
7903e1ec05 New initializer type called sol::factories, and the documentation to go with it 2016-08-17 01:16:44 -04:00
ThePhD
4bcedd24cc [ci-skip] update single header 2016-08-12 16:10:49 -04:00
ThePhD
0d1d5ebd09 Turns out C++ sucks when all implementers don't do things equally as fast. WHO KNEW? 2016-08-12 13:08:59 -04:00
ThePhD
cd64453789 update single 2016-08-12 12:31:51 -04:00
ThePhD
391152382c [ci-skip] update feature table and be good at stuff 2016-08-12 11:06:14 -04:00
looki
09ba220e62 Fix 'expected .. received ..' message for function arguments 2016-08-12 04:33:26 +02:00
ThePhD
ac6ff25061 Update single 2016-08-11 11:38:47 -04:00
ThePhD
b3594c0ed7 Update single and release 2016-08-11 09:35:00 -04:00
ThePhD
4cde2b6a3b making questionable decisions since 1892 2016-08-11 07:25:57 -04:00
ThePhD
0f1f7859f1 single update 2016-08-07 20:57:38 -04:00
ThePhD
04eb19603c Update single hader 2016-08-07 14:05:02 -04:00
ThePhD
89e0b62f2d const-ness fucking me in the ass again 2016-08-01 04:04:44 -04:00
ThePhD
2b0912b007 single file update 2016-07-29 01:12:28 -04:00
ThePhD
c37a184c09 rdy2roll 2016-07-15 10:16:19 -04:00
ThePhD
c03073e059 [ci-skip] O boi 2016-07-15 07:56:28 -04:00
ThePhD
87eb901b01 Fix #139 2016-07-12 20:55:26 -04:00
ThePhD
045d96e11a Update single sol.hpp 2016-07-11 13:03:38 -04:00
ThePhD
5740566ecf [ci skip] Neat. 2016-07-09 15:25:10 -04:00
ThePhD
5d89799d7e More fixes, oooh boy... 2016-07-09 14:21:23 -04:00
ThePhD
975788c920 Make sure unicode is cleaned and put all of the right things in place here 2016-07-09 13:40:15 -04:00
ThePhD
14ced4af69 Add more tests and fix smaller errors with overloading and such. 2016-07-09 01:12:33 -04:00
ThePhD
2b69a03c46 Renew single inside of repository 2016-07-07 20:11:18 -04:00