Patryk Czachurski
2d47fc09c3
Inside sol::proxy::call, check if we're building with clang
...
If building with clang on Windows, it tries to imitate MSVC by specifying reasonable _MSC_VER defines.
This makes sol2 compile MSVC version of sol::proxy::call (without the "template" preffix) that is nevertheless not accepted by clang.
This commit fixes the problem by also checking if "__clang__" is defined.
2018-10-28 14:11:27 -07:00
ThePhD
8039dd22a6
update documentation with additional information about resolve and overload ( fixes #664 and fixes #665 )
...
add new shared_ptr differentiation mechanism that persists between DLLs (fixes #661 )
change valid Lua version to handle Lua 5.4.0-work1 (fixes #649 )
remove upper limit on MSVC version: they're not fixing it anytime soon (fixes #655 )
add integer value for definition (fixes #651 )
2018-06-15 13:19:09 -04:00
ThePhD
fd58e7fcd1
fix #638
...
bump microsoft version check up (fx #639 )
2018-05-10 05:30:51 -06:00
ThePhD
80df3fc915
Fix #626
...
Fix #625
Fix #624
2018-04-12 13:58:25 -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
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
c377ecebcb
more travis stuff, add missing license notice, update license year
2018-02-19 21:15:26 -05:00
ThePhD
67116a67f9
Fixes #588
...
Tentatively supports (?) #589 with sol::yielding and sol::yielding_t
Added Catch as a cmake module
2018-02-17 00:18:26 -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
0e19156d52
update everything for the new cmake build, prepare for new .travis.yml and new appveyor.yml
...
Add name of project at top of license
fix container_traits with respect to boost::property_tree: Fixes #554
fix as_table with a vector of tuples (forward_get ignored constness): Fixes #552
2017-12-20 04:58:50 -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
3ee36c7d2e
fix proxy compare
...
try to silence some really dumb PVS STudio warnings
2017-10-16 19:28:43 -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
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
5816c6c34b
.clang-format the crap out of everything, I guess...!
2017-09-13 02:46:56 -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
104485bebd
this mega commit prepares to fix all of the issues listed in the repository for the past 3 weeks
2017-08-05 19:20:28 -04:00
ThePhD
e69e7c79fa
C++17 additions: std::variant, string_views of all types, checker for if we have the right version
...
added variadic_results, to return a variable number of arguments to Lua
added variadic_results and as_results
added improved function examples (for multiple results and split overloading out)
added tests for variadics
added tests for C++17 utilities
added a forwarding header
added a specific `unsafe_function` header
added and improved documetation pages
2017-07-09 12:54:52 -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
fe8b1c1c10
Bug in not properly keeping the observed valid table on the stack.
2017-02-01 06:54:30 -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
d0a36c9657
objc define to keep code clean on that platform
2016-12-03 07:33:18 -05:00
ThePhD
289ded358c
-Wshadow and -Wconversion are kind've dumb
2016-11-25 20:47:15 -05:00
ThePhD
0859af3203
Fix comparisons done of improper types
2016-10-30 04:40:17 -04:00
ThePhD
0ba4650c64
Another example, constness derp fix
2016-10-05 20:39:49 -04:00
ThePhD
81ffb3f334
make sure proxies can be properly set to one another
2016-08-24 12:21:14 -04:00
ThePhD
09ee4db1ed
More templated fixes.
...
Closes #131
Closes #126 , for the time being -- we can't make it go any faster without fundamentally breaking the system, and I can't do that to users rn
2016-06-29 14:08:26 -04:00
ThePhD
556be8da98
Documentation updates -- require function and add function and size function needed documentation
...
New `add` function as requested by @EliasD
2016-06-19 17:59:40 -04:00
ThePhD
3b81a7c85f
VC++ is a butt, but this Closes #91
...
It prepares for #97 as well, and blocks out #95 until I can be assed
Now, it's either performance or handling sol::property ...
2016-05-19 02:15:42 -04:00
ThePhD
1c61773354
Use absolute indices in the places where it's necessary.
2016-05-03 16:49:53 -04:00
ThePhD
16007fa792
Documentation update, get_or
for proxies, and other goodies.
2016-04-09 00:55:12 -04:00
ThePhD
9734577fdb
stack implementation, plus reference semantics within lua for usertypes/data now.
...
I hate my life.
I hate the projects I'm working on.
Closes #53
Closes #56
Closes #52
2016-04-07 05:21:49 -04:00
ThePhD
8862c65f0a
NOW we're truly feature complete. Sheesh, the work that this requires....
2016-03-31 16:16:07 -04:00
ThePhD
5acb33e2bc
full-on optional support. so much support it's coming through my eyeballs. Goodness.
...
Support for c_call wrapper to be a thing.
2016-03-30 00:31:18 -04:00
ThePhD
9aabf71896
Off by one errors .-.
2016-03-25 05:38:09 -04:00
ThePhD
68660a1bed
Allow for checking whether or not a given proxy is valid.
2016-03-25 05:27:19 -04:00
ThePhD
09a0a5051a
Documentation updates and new stack::check_get API.
2016-03-24 15:45:44 -04:00
ThePhD
d52bc23f53
Mooooar tests. And better support for proxy and tuples.
2016-03-15 06:36:25 -04:00
ThePhD
3534bc222c
proxy is now pushable, making it usable with functions
2016-03-15 05:20:56 -04:00
ThePhD
97e36f70c5
Alright, NOW everything's kosher. Bwuh, byte order marks...
2016-03-14 09:53:24 -04:00
ThePhD
29dacd819e
new files for protected functions and its results. Allows for better doc writing.
2016-03-02 21:02:12 -05:00
ThePhD
251e350539
coroutines \o/
2016-02-27 02:43:53 -05:00
ThePhD
9c21d11b8c
Proper defaults for bootstrap.py
...
Checks in g++ to make sure things compile
clang++ is a major asshole...
2016-02-24 13:59:17 -05:00
ThePhD
3d7a93ae1c
Put detail classes not part of the interface into deeper namespaces to clear up the to level.
2016-02-23 23:39:46 -05:00
ThePhD
1293213775
Several improvements to tunnneling for the library, with included tests
...
Some stack size tests are also included to prevent stack overflow as well.
2016-02-13 20:14:31 -05:00
ThePhD
9372b54b02
Preparing for overload support
...
Preparing to benchmarking of several different lua frameworks
2016-02-09 03:38:11 -05:00
ThePhD
1d93f560f2
more luajit compatibility fixes - works with Lua 5.1, 5.2, 5.3
...
additional tests to make sure pass-by-value and copy semantics work as intended
new proxy_base class to reduce code duplication
update function / protected_function usage (to solve starwing's issue while keeping code as clean as possible)
2016-02-01 03:27:06 -05:00
ThePhD
27f09fbb35
variadic set - introduction of state_view
type to allow for all of the benefits of state
without destructing lua instance.
2016-01-30 04:21:33 -05:00