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
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