kyren
0909ca34fc
auto formatting
2017-12-03 18:25:53 -05:00
kyren
e41c72d642
more refactoring trying to find a workable path to 'm' error safety
2017-12-03 18:15:31 -05:00
kyren
5742e3f20a
still making small structural changes
...
slowly trying to refactor things until using all the protected calls in
protected_ffi is workable
2017-12-02 19:16:57 -05:00
kyren
f51a822738
auto-formatting
2017-12-02 18:56:14 -05:00
kyren
8a6161b16f
new strategy for protected ffi calls
2017-12-02 18:37:17 -05:00
kyren
b7c80ec066
make some things private
2017-12-02 17:47:00 -05:00
kyren
2b7e89e7c6
move error / panic metatable creation
2017-12-02 17:13:46 -05:00
kyren
fa1703d3d1
split macros into their own file
2017-12-02 17:04:33 -05:00
kyren
8a7e03978b
Experimental protected versions of all used 'm' erroring functions
2017-12-02 15:41:53 -05:00
kyren
cfa2b34a7b
Bump version to 0.9.7, update changelog
2017-11-08 14:07:48 -05:00
kyren
cf013a6a43
Merge pull request #55 from Timidger/bugfix/setting_metatable_nil
...
Fixes error when setting metatable to nil
2017-11-08 00:32:38 -05:00
Timidger
f9c451bd26
Add test ensuring behaviour is correct
2017-11-07 20:13:52 -08:00
Timidger
8ac27877e4
Only get gc on setmetatable if metatable isn't nil
2017-11-07 20:13:30 -08:00
kyren
33eff0e132
Merge pull request #54 from Timidger/feature/debug-unsafe-lib
...
Added ability to load debug lib, Fixes #52
2017-11-04 02:57:03 -04:00
Timidger
a137086064
Check that we have enough room on stack for module
2017-10-29 15:26:40 -07:00
Timidger
71fdca5477
Fixed test to use Lua assert
2017-10-29 15:24:54 -07:00
Timidger
316c6976e4
Added pop after loading lua library
2017-10-29 14:54:55 -07:00
Timidger
26b7901ab3
Added test for loading unsafe debug library in Lua
2017-10-29 14:53:30 -07:00
Timidger
2658433bd1
Added ability to load debug lib, Fixes #52
2017-10-28 20:46:24 -07:00
kyren
00a3153ae0
Bump version / changelog for 0.9.6
2017-10-26 16:53:14 -04:00
kyren
892069edd6
Correctly wrap external errors so that Debug trait and Error::cause are correct
2017-10-26 16:49:16 -04:00
kyren
8592af1b16
Bump version to 0.9.5, update changelog
2017-10-25 14:55:05 -04:00
kyren
deab88a851
Fix xpcall return values, make the tests a lot better.
2017-10-25 14:51:10 -04:00
kyren
773bf3e9ba
Fix some clippy lints, possible edge case API incompatibility around HashMap
2017-10-24 16:15:57 -04:00
kyren
4bbeeb2b2d
Update to 0.9.4, update changelog
2017-10-24 08:59:55 -04:00
kyren
f634ce1101
It turns out, luaL_ref uses 1 extra internal stack space
...
All my check_stack calls are wrong, and this blows up very easily in situations
with recursive data structures.
2017-10-24 08:53:26 -04:00
kyren
e7661a5c27
auto-formatting
2017-10-23 16:42:20 -04:00
kyren
8c30acec4e
Possibly better stack behavior
2017-10-23 15:17:46 -04:00
kyren
ba183b0119
Fix quadratic behavior in bind
2017-10-23 14:50:47 -04:00
kyren
4a7881f652
Whoops, messed up the version in the changelog.
2017-10-14 19:33:53 -04:00
kyren
401c06cfe6
Bump cargo version to 0.9.3, update changelog.
2017-10-14 19:27:24 -04:00
kyren
8a2cfeb00d
Update readme regarding plans for panic / abort safety and other clarifications
2017-10-14 18:53:05 -04:00
kyren
4b7a3403bc
Cleanups of userdata handling, particularly around callbacks
...
First, make sure that `add_methods` cannot trigger another userdata registry
insert, causing an unintended panic. Second, remove `RefCell` surrounding
userdata hashmap, as this change makes it no longer needed. Third, add a
`RefCell` around `Callback` because FnMut means that callbacks cannot recurse
into themselves, and panic appropriately when this happens. This should
eventually be turned into an error.
2017-10-14 18:26:09 -04:00
kyren
c5a4dfd7eb
more reorganization, move simple type defines to types.rs module
2017-09-30 01:27:18 -04:00
kyren
8324d9e648
move userdata tests into userdata.rs
2017-09-30 01:13:58 -04:00
kyren
7a45490aca
crudely move LightUserData/UserData/AnyUserData to their own module
2017-09-30 01:08:08 -04:00
kyren
cf764fbabe
move table tests to table.rs
2017-09-30 00:53:28 -04:00
kyren
f785180a77
Merge pull request #45 from jonas-schievink/string
...
Extend String API
2017-09-30 00:43:19 -04:00
kyren
cc502379c1
Print CallbackError in a better way
...
CallbackError now, instead of displaying the cause description, instead prints
"callback error: <traceback>". Since the cause is already in the cause chain of
the error, this avoids repeatedly printing the cause of callback errors along
the chain, and also actually prints the callback when using Display on each
error in the chain.
2017-09-26 11:36:50 -04:00
kyren
ef538d8757
Update rlua to 0.9.2, add SOME kind of changelog.
2017-09-24 19:32:26 -04:00
kyren
61dc2823a6
Merge pull request #47 from jonas-schievink/base--
...
Don't load the base library into the "base" global
2017-09-16 21:09:33 -04:00
Jonas Schievink
a7a080b50a
Don't load the base library into the "base" global
...
The stock Lua interpreter doesn't do this either. AFAIK the "base" library is supposed to be loaded into "_G" only as it contains functions like `assert` and `error`.
2017-09-17 00:07:19 +02:00
kyren
4b035af0e8
Merge pull request #44 from jonas-schievink/linkfix
...
Fix links in `Variadic` docs
2017-09-15 19:43:12 -04:00
Jonas Schievink
a5b6d8fc85
Add String::as_bytes_with_nul
...
This cannot be accomplished without using unsafe code, which justifies this addition in my opinion.
Also changes "null" to "nul" to be in sync with `std::ffi` docs. Naming is derived from `CStr::to_bytes_with_nul`, using `as_*` instead of `to_*` since this isn't doing any computation.
2017-09-15 23:33:28 +02:00
Jonas Schievink
0e4414fc0b
Impl AsRef<[u8]> and generic PartialEq for String
...
Tests are also moved to the new string.rs file to ensure related functionality is in one place.
2017-09-15 23:10:53 +02:00
Jonas Schievink
823dd39e5d
Move string and table wrappers into own files
2017-09-15 22:03:14 +02:00
Jonas Schievink
14d8b4a0a2
Fix links in Variadic docs
2017-09-15 20:56:46 +02:00
kyren
121bac8394
Merge pull request #43 from jonas-schievink/dire-dire-docs
...
More documentation work
2017-09-14 23:27:57 -04:00
Jonas Schievink
22cbed0240
More documentation work
2017-09-14 22:59:59 +02:00
kyren
d862c0f08e
Add methods to get/set metatables on Table
...
Also make Table::raw_get actually use raw get function instead of lua_gettable!
2017-09-10 19:14:51 -04:00