Commit Graph

168 Commits

Author SHA1 Message Date
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
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
a6abc0a0d9
update everything 2018-12-22 15:36:42 -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
f75d335988
Merge remote-tracking branch 'origin/develop' into sol3
# Conflicts:
#	include/single/sol/sol.hpp
#	include/single/sol/sol_forward.hpp
2018-11-09 08:26:27 -08:00
syl
2a91f2416a Fix typo error in usertype.rst 2018-10-25 02:05:35 -07:00
ThePhD
0a9dc24f1f
first big sol3 push... tests not updated yet 2018-09-27 22:27:38 -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
4f366a17a9 begin migrating benchmarks and preparing documentation for sol3 2018-05-17 02:31:28 -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
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
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
68738cdc83 improve docs
refactor default state additions to let user do the same thing with less effort
prepare for sol::upvalues tinkering
2018-03-05 22:54:31 -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
8d62fbaf5d add handle for potentially overloaded size() definitions (pray it works with noexcept anyhow). 2018-02-22 12:26:46 -05:00
ThePhD
b78d900d05 One day, everything will build proper.
One day.
2018-02-17 11:00:27 -05:00
reworks
e7c43ce242 Docs note that MSVC Compilers may require /bigobj (#591)
* Note that MSVC Compilers may require /bigobj

So when making heavy use of headers or templates, MSVC will error with ["Fatal Error C1128"](https://msdn.microsoft.com/en-us/library/8578y171.aspx). The solution is to use the [/bigobj](https://msdn.microsoft.com/en-us/library/ms173499.aspx) flag. This does, however, mean that, as per msvc docs, "Linkers that shipped prior to Visual C++ 2005 cannot read .obj files that were produced with /bigobj".

* Update usertype.rst
2018-02-17 10:10:07 -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
fc6ccdfa7e start preparations for new travis
update appveyor
add blocks for tests on platforms where things are expected to fail
prepare for LuaJIT
2017-12-25 20:18:29 -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
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
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
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
e3bd984062 cannot do automatic lua_xmove because of state differences 2017-09-12 22:01:29 -04:00
ThePhD
fcdb471167 update docs and benchmarks to include images directly to cut down on doc build warnings
add coroutine tests for new xmove copy and move constructors
cry tears because Lua does not kill the variables on the thread before killing the thread
2017-09-12 19:15:23 -04:00
ThePhD
8409a82c1a [ci skip] update docs 2017-09-07 12:22:30 -04:00
ThePhD
fbdc5d9798 [ci skip] doc fixes 2017-09-06 15:13:17 -04:00
ThePhD
fb276676d1 create and test raw_set and raw_get
add `new_enum` overload for initializer lists
add ipairs overload for 5.2 users
2017-09-06 15:09:51 -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
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
6ce82de04d [ci skip] update docs 2017-08-24 18:57:11 -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
8f6b51ad29 [ci skip] update docs 2017-08-21 16:20:39 -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
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
Diana
2e5d31983a Fix typos and grammar in documentation (#481)
* Typos

* Typo

* Typo

* words

* Typos, grammar

* extra space

* Typo

* Fix typos
2017-08-11 11:43:40 -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
ThePhD
0744cc4e4a [ci skip] documentation polish and explicitness 2017-07-09 14:50:54 -04:00
ThePhD
afaecbad2c in_place will be the death of me 2017-07-09 13:44: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