ThePhD
ac5f13ce2f
Now protect should work in multiple places, albeit we still need to do some optimizations to kick it in
...
Address #137 and improve implementation to not have to pop arguments
2016-07-09 13:38:55 -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
cf5919b705
Proper workings for multiple inheritance work.
2016-06-16 20:15:56 -04:00
ThePhD
3bece97a40
Statikk trampolines and new tests for the newly opened issue
...
Closes #119
2016-06-15 12:00:25 -04:00
ThePhD
d76b7ebe09
Things're gonna get silly...
2016-06-13 22:31:19 -04:00
ThePhD
c458849d29
Many of the tests are still busted, but we're getting closer.
...
Closes #96
Closes #79
Fixes #105 - but we still need to double-check and add a test to prove it
2016-06-06 15:46:53 -04:00
ThePhD
e35fe6be85
This mega-commit implements the new usertype_metatable
while keeping everything else still intact. Blurgh, managing API versions suck...
2016-06-03 21:40:23 -04:00
ThePhD
7be09d0781
Who would have thought Lua's API between versions would be so... inconsistent.
2016-05-20 04:20:22 -04:00
ThePhD
96f231a183
We do have a cheap char type now, but figuring out that codecvt is super busted makes me sad
...
Safety macros are now in place. Usertype ones turned on by default
Closes #93
Closes #94
2016-05-18 21:29:17 -04:00
ThePhD
033c61ff1a
Constructors for many of the types updated. sol::object
now makes many more styles of types. Tests updated to match. Update documentation as per #87 . Close #88 . Close #86
2016-05-13 02:48:22 -04:00
ThePhD
9e31119f16
This commit adds some QoI constructor keys / types, as well as implements make_object
. The documentation has been updated as well.
...
Closes #78
Closes #77
Closes #76
Closes #75
2016-05-03 14:19:30 -04:00
ThePhD
706ca803c8
push_reference and specific notes in the documentation for it
2016-05-01 17:10:41 -04:00
ThePhD
38d21827b1
:l Stop finding bugs in my code -- unique_usertype_traits implemented, sol::overloaded work for static functions
2016-04-24 01:39:44 -04:00
ThePhD
006357430b
Shiny quick 'n' dirty tutorial -- variadic_args now is iterable -- fixed bug with transparent args in overload resolution -- added load
functions
2016-04-23 17:07:51 -04:00
ThePhD
2cfe74cc7f
Better demangling
...
Userdata pushed before the usertype is pushed will not latch onto the new metatable if its added
Updated tests
2016-04-22 17:06:56 -04:00
ThePhD
9872c67b4f
jit lib and all
2016-04-17 21:00:24 -04:00
ThePhD
4fb5edab59
today is not a good day
2016-04-17 02:59:09 -04:00
ThePhD
a585dd45ab
cout-style debugging... caaaan't wait....
2016-04-17 02:52:41 -04:00
ThePhD
88155d44e0
sol::property is implemented for usertypes now
...
sol::this_state is a transparent argument that gets the current state at any position in any callback
sol::variadic_args allows a person to get something that can reference the "rest of the arguments", though it doesn't enforce that it has to be the last argument
Closes #57
Closes #59
Closes #60
2016-04-17 02:18:34 -04:00
ThePhD
42f4455383
Allow for "static functions" to be registered on userdata like other parts of the framework, as well as self-contained structs and lambas.
...
sol::readonly for the ability to make a variable set on a userdata readonly.
No support for property yet: put on issues list for later
2016-04-11 01:02:43 -04:00
ThePhD
16007fa792
Documentation update, get_or
for proxies, and other goodies.
2016-04-09 00:55:12 -04:00
ThePhD
4854cc98a5
S I G H Luajit
2016-04-07 05:29:08 -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
7af3fc4ffa
Added nullopt pushing, optional pushing, improved tests
2016-03-30 16:52:51 -04:00
ThePhD
92c388e30a
And nooow we're set for optional. Totally. With the get_or
implementation as well. Hopefully this will be all we need.
2016-03-30 01:40:40 -04:00
ThePhD
9804d7dd63
Merge remote-tracking branch 'zwparchman/develop' into develop
2016-03-30 00:34:05 -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
Zachary
6637f2e1b7
Added table::get_with_default method
...
There is now a sol::table::get_with_default method that takes 2
arguments, one being the key to search on, the other being the default.
If the key does not have a value in the table the default value is
returned.
2016-03-29 13:03:19 -05:00
ThePhD
a0fdaaaa7d
Full-on optional support.
2016-03-25 10:39:54 -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
f43adf9a3d
Additional function creation tables and tests to keep them there.
2016-03-15 07:32:59 -04:00
ThePhD
d52bc23f53
Mooooar tests. And better support for proxy and tuples.
2016-03-15 06:36:25 -04:00
ThePhD
62f082d999
documentation fixes from feedback and fixes!
2016-03-14 02:34:02 -04:00
ThePhD
c42c1bafe5
Documentation fixes, new tests, unique/shared_ptr support.
...
Closes #32
2016-03-13 08:30:14 -04:00
ThePhD
1a9c7484b1
Fix up the API; prepare for release.
2016-03-11 11:34:44 -05:00
ThePhD
d883ad072c
Ooops.
2016-03-02 21:07:19 -05:00
ThePhD
8827751c20
trampoline fx for gcc 4.9 needs some implicit conversion help.
2016-03-02 21:05:01 -05:00
ThePhD
923c774d5e
ability for functions that throw not bound by sol to catch and return lua errors that can be used by a handler function (for protected function).
2016-03-02 20:45:52 -05:00
ThePhD
4ed197f065
formatting
2016-02-27 08:04:02 -05:00
ThePhD
d42efd7fdf
Proper trampolines to allow luajit to play nice with all the other kids in sol
.
2016-02-27 07:56:28 -05:00
ThePhD
251e350539
coroutines \o/
2016-02-27 02:43:53 -05:00
ThePhD
2d845a273d
Invert conditional, 'cause I'm a dumb.
2016-02-25 13:29:37 -05:00
ThePhD
1341aafa27
Unfortunately, exceptions require some overhead in luajit... overhead we can't always accept on behalf of the user.
2016-02-25 13:04:04 -05:00
ThePhD
f9da62a6e3
g++ 4.8 can't handle raw string literals in macros... that's rough.
2016-02-25 03:51:29 -05:00
ThePhD
51cd0cb0da
Messed up the spacing like a pleb
2016-02-24 14:10:22 -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
16c6f62fe3
Remove strerror deprecation remark
2016-02-22 02:44:27 -05:00
ThePhD
019c7b037b
Huge improvements to the library and fixes to compile in g++.
...
usertype now respects factory functions and does not make default constructors/destructors unless the compiler says its okay
new and __gc functions can be overridden for usertypes to provide handle-like creation and deletion functions
Overloading match fixes
RAII improvements for all usertypes
Added tests to make sure these features stay
2016-02-21 19:26:58 -05:00
ThePhD
b2b73db5cb
overloading searching improvements and general refactoring for cleaner implementation.
2016-02-18 22:17:52 -05:00