ThePhD
a49fbc2f04
Objective C will always haunt me.
2019-05-26 13:32:28 -04:00
ThePhD
017b2cfac1
update single and improve safety config documentation
2019-05-21 21:28:18 -04:00
ThePhD
f701fd2de7
HEAVILY improve the entire infrastructure and documentation along with all the examples
2019-05-21 19:17:31 -04:00
ThePhD
8f88e104be
make sure that stack_aligned_stack_handler_function behaves properly
2019-04-29 05:16:33 -04:00
ThePhD
e8467334f6
Completley overhaul tests
...
Add unregister funcationality
Make sure clearing is stack-size-safe.
2019-03-22 16:28:17 -04:00
ThePhD
b63d7af060
Add lua_table and lua_value abstractions
...
Improve dump handler, bytecode, and base traits
Fix tolua on bad calls, fix interop handler changes
We are now truly done with all feature requests...
2019-03-18 07:41:51 -04:00
ThePhD
c1a8cb1dc5
Update copyright year, add dump function
2019-03-13 05:18:06 -04:00
ThePhD
ee13a7812f
Full fixes for everything.
2019-03-09 20:57:49 -05:00
ThePhD
b6f40935c8
add new tas for override_value and update_if_empty, improve the enable_if for a bunch of field_setter stuff
...
perform the last breaking change with .source()
prepare for the coming release...
2019-02-16 17:27:03 -05:00
ThePhD
b938e42af6
SUPER DUPER UPDATE WOO
2019-02-14 02:40:57 -05:00
ThePhD
b4e83ca866
attempt to improve throughput and compile times even more
...
change CMake to stop being such a goddamn fucking menance with the warnings and errors
try to get full /W4 clean compliance
2019-02-10 15:02:40 -05:00
ThePhD
0a21fbf3f0
clean up more warnings, wew
2018-12-27 13:02:31 -05:00
ThePhD
e21614d7f6
I n t e r f a c e l i b r a r i e s a r e r e a l l y g o o d
2018-12-27 12:41:43 -05:00
ThePhD
f6e6398f64
Be consistent with the use of target_link_libraries...
...
I really dislike CMake
2018-12-27 12:37:56 -05:00
ThePhD
486086ffe0
fix up CMake files once more, and hopefully prepare for a new test coverage paradigm
...
notably, test normal + single + generated + Lua 5.3.5 only once,
then only run the runtime_test and compile_test for normal for all other permutations to help increase text matrix throughput
2018-12-27 02:17:25 -05:00
ThePhD
9760a400cd
testing and test matrix improvements
2018-12-23 13:18:14 -05:00
ThePhD
a6abc0a0d9
update everything
2018-12-22 15:36:42 -05:00
ThePhD
88cafb281f
improve all tests, fix all tests, and improve metatable for GCC builds
2018-12-21 01:07:05 -05:00
ThePhD
c35c66baf7
update all tests and fix all the small derps and typos
2018-12-20 01:18:07 -05:00
ThePhD
bbd5bd7fa1
Fix Linux build as best as possible while size issues still remain with MinGW.
2018-12-19 23:17:15 -05:00
ThePhD
162746dac9
Merge branch 'develop' into sol3
...
# Conflicts:
# docs/source/tutorial/variables.rst
# include/single/sol/sol.hpp
# include/single/sol/sol_forward.hpp
# include/sol/proxy.hpp
# sol/usertype_metatable.hpp
2018-11-10 07:12:13 -08:00
ThePhD
2cfbc8c0ea
Fix up the remaining sol2 issues, prepare for more sol3 stuff
2018-11-10 06:41:06 -08:00
ThePhD
a7048aea45
fix up variables tutorial
2018-11-09 14:36:27 -08:00
ThePhD
0a9dc24f1f
first big sol3 push... tests not updated yet
2018-09-27 22:27:38 -07:00
ThePhD
0e321272e6
update docs a bit, think aobut changes to container_traits and friends...
2018-08-10 11:17:31 -04:00
ThePhD
4f366a17a9
begin migrating benchmarks and preparing documentation for sol3
2018-05-17 02:31:28 -04:00
ThePhD
c72a012927
Fix Visual Studio 2015 builds, fix error handling printouts / exceptions, fix constexpr usage that trips up Visual Studio 2015.
2018-04-17 20:08:07 -04:00
ThePhD
818f766066
Trying to clean up all the macros. One day, I'll finish the configuration layer and everything will be beautiful.
2018-04-17 15:04:17 -04:00
ThePhD
612c1232e2
add reference to stack here
2018-04-01 21:38:21 -04:00
ThePhD
0c380da637
in place modification function there, but it won't be documented because it's a BAD IDEA
2018-03-30 04:51:29 -04:00
ThePhD
c464888c3e
add more explicit readme notes for things we support
...
add examples about shared/unique
update documentation
2018-03-25 12:45:28 -04:00
ThePhD
8e8dd379ff
update tests because AAAAHHHH exceptions
2018-03-22 10:59:37 -04:00
ThePhD
b447c3d69c
Add custom metatable and c_array example
2018-03-21 17:19:46 -04:00
ThePhD
947945d098
Full documentation overhaul. Add a billion more examples. Fix r-values getting stuck as r-value references in proxy keys.
2018-03-16 16:47:09 -04:00
ThePhD
6c40c559e3
prepare for new usertype
...
change how type T is gleaned from destructors and constructors in case of new syntax
add a hell of a lot more examples, update and clean documentation
2018-03-15 17:16:28 -04:00
ThePhD
22ecb743d7
container with pairs had some bad syntax, oops
2018-03-10 22:00:08 -05:00
ThePhD
a83091cba4
implement visible c:pairs() and c:at() functions for the user
...
adjust metatable types
add example with a std::pair-containing container
2018-03-10 20:45:01 -05:00
ThePhD
6a6025393f
meow
2018-03-09 23:40:37 -05:00
ThePhD
c8bfcd2dc2
update stack docs
...
fix examples
do not throw std::exception directly: always use std::runtime_error, as it is the only one with a proper exception hole
2018-03-09 23:32:03 -05:00
ThePhD
623a38e80e
add exception trampoline support to sol2 and add an example on how to use it
2018-03-09 22:27:49 -05:00
ThePhD
560b5b2673
ᕕ༼ •̀︿•́༽ᕗ VC++ COMING THROUGH WAHAAAY ᕕ༼ •̀︿•́༽ᕗ
2018-03-06 17:36:33 -05:00
ThePhD
e8119ec9a3
Fix semantics of check_get for objects obtained by proxy
2018-03-04 10:56:05 -05:00
ThePhD
e8e5ddc890
fix overpop from stack_check_get tracking
2018-03-04 05:40:57 -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
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
b46b106114
update docs and examples
2018-02-28 01:56:11 -05:00
ThePhD
22c41d9482
Update documentation, refactor examples out of docs, fix warning about static entry path
...
Still need help refactoring out more code from docs...
2018-02-24 17:19:16 -05:00
ThePhD
b78d900d05
One day, everything will build proper.
...
One day.
2018-02-17 11:00:27 -05:00
ThePhD
258acff99b
fix coroutine handler, change examples compilation, try to handle m32 compilation issues
2018-02-17 10:45:08 -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
eca9ec46fd
Beef up testing suite significantly and make sure that the interop examples compile, at least on Linux
...
These damn libraries definitely don't compile clean on Windows... but then again, most people don't give a damn about Windows :<
2018-02-12 17:01:30 -05:00
ThePhD
8d2a25988c
Maybe this will finally fix all the example errors
2018-02-12 03:55:14 -05:00
ThePhD
6f80e271d7
these cmake details are starting to get unruly...
2018-02-11 00:53:53 -05:00
ThePhD
7056156273
Case sensitivity, but it doesn't show on VirtualBox because VirtualBox's file system for shared folders emulates Window's case insensitivity, lel!
2018-02-10 21:24:21 -05:00
ThePhD
1d0683a53e
add all examples for all interop types
...
Implements #578
2018-02-10 16:24:17 -05:00
ThePhD
2e648638ef
Fixes #580
...
Adds some code for #579 to warn of bad errors
Update documentation and examples, as well as fix fPIC with static builds on Linux
2018-02-08 23:19:45 -05:00
ThePhD
88ba80bb61
add additional CMake presentation
...
Update container documentation
Fix ISSUE_TEMPLATE
Fix up documentation for quick and dirty, pulling example source directly from bundled code
addresses #578
2018-02-08 00:40:34 -05:00
ThePhD
1a64ba0fe5
Improve the docs, set up LuaJIT, and try to figure out why we can't build a DLL as an external projcet target with LuaJIT...
2018-01-19 15:03:22 -05:00
ThePhD
71963f9678
Try to always use the dedicated library built for the docker image by the LLVM team, otherwise everything goes to hell....
2018-01-10 08:40:37 -05:00
ThePhD
a98e0633ce
update travis usage and build description, and change inclusion matrix to allow for more failures
2018-01-08 09:06:03 -05:00
ThePhD
732b4bd700
add new tests for unqualified returns through as_nested/as_table
2017-12-28 12:11:12 -05:00
ThePhD
0051548dfa
big sigh; one day we'll get this all right...
2017-12-27 07:42:37 -05:00
ThePhD
70b2fa0b41
unless the LLVM and MINGW builds once again
2017-12-26 20:42:40 -05:00
ThePhD
d05769b80e
fix up examples and use build log to get neat messages
2017-12-26 08:04:54 -05:00
ThePhD
6000dcd490
update assert implementation
2017-12-26 01:11:09 -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
6d2100e814
Prepare for full appveyor build.
...
Add abort_clean so that CI does not get stuck on a message box that can never be answered
alignment rules do not apply to stack variables, so the tests cannot have the alignment check in the destructor: only for memory pushed into and coming straight out of Lua
2017-12-25 11:44:04 -05:00
ThePhD
83013333d7
Let it rip!
2017-12-24 12:32:23 -05:00
ThePhD
453a0daaaf
fix VC++ build of examples and try to get appveyor to compile and run...
2017-12-24 01:30:55 -05:00
ThePhD
ed3de48cce
make sure bogus deprecation warnings and killed
2017-12-23 22:26:27 -05:00
ThePhD
9a009e5cf1
gate features behind check
2017-12-23 21:29:29 -05:00
ThePhD
9524fd061e
All these platforms are so hard to deal with...
2017-12-23 20:34:34 -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
e06d2fb581
add single, add examples
2017-12-10 15:56:49 -05:00
ThePhD
a86e9ee62d
update examples and fix error_result returns
2017-12-07 09:04:19 -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
10b1bb04a9
formalize unsafe_function_result
...
add index-based getter to function_result
add safety checks for double deleters and other things of that nature
2017-11-07 20:19:36 -05:00
ThePhD
a67974250e
add singleton example
2017-10-12 10:20:57 -04:00
ThePhD
22d9905f39
another state example
2017-10-02 20:03:26 -04:00
ThePhD
73484bf8e9
add smaller environment example that's easier to process
...
vet entire framework for aligned reads/writes of memory for userdata
update documentation, links and tutorials accordingly
2017-10-02 17:32:58 -04:00
ThePhD
f9c93fc2bc
update examples and documentation
2017-09-24 16:36:45 -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
0c20d066b9
LuaBridge and luwra interop examples as well, to give people a good idea
2017-09-24 03:12:50 -04:00
ThePhD
469be6670f
should probably not include all of kaguya with sol2's examples, aha.
2017-09-23 20:40:37 -04:00
ThePhD
6d879f571a
add code to steal guts and grab stuff from other frameworks.
2017-09-23 20:26:03 -04:00
ThePhD
7ff3a390b1
final lua_xmove fixes
2017-09-13 11:29:32 -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
b2f9822632
Mmmn, still can't type conditionals
2017-08-24 17:49:08 -04:00
ThePhD
78fd95d456
I'm also a dumby sometimes
2017-08-24 17:37:13 -04:00
ThePhD
2b2a6d2ab1
One day, Lua 5.1 will be phased out of existence and everyone will have the latest and greatest...
...
... One day.
2017-08-24 17:12:13 -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
a163ae7b33
add dynamic_object example
...
add note to functions about lambda return types
2017-08-23 15:48:09 -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
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
eb1560d12a
add as_container documentation
...
improve exception documentation
improve state_view default handlers
add SAFE_PROPAGATION defines for compiling C++ as Lua
add examples for automatic operator registrations and as_container
fix tutorial code
change tests to not throw unless absolutely necessary
provide synchronization for file writing in tests
provide thread safety around thread tests for REQUIRE
add ostream automatic support
change 5.1 compat to only kick in luaL_loadbufferx and luaL_loadfilex when LuaJIT is version 2.0.1 and lower
2017-08-11 03:24:17 -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
03c229b25b
overhaul examples and add 2 new ones in preparation for the coming hell
...
fix how `stack_aligned_protected_function` and its friends behave
add new internal handler details to allow for stack-based handlers with maximum performance
update `string_shim` typedef to simply be called `string_view` and use `string_view` in all public-facing APIs.
2017-08-06 12:20:32 -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