Alex Orlenko
2022de2156
v0.9.2
v0.9.2
2023-11-21 22:35:59 +00:00
Alex Orlenko
66e01548ce
Update Luau+windows require dylib failed test
2023-11-20 22:16:44 +00:00
Alex Orlenko
93b505cff9
Integrate Luau package into mlua api.
...
Eg. `Lua::load_from_std_lib` with `StdLib::PACKAGE` is now supported for Luau.
2023-11-20 12:08:08 +00:00
Alex Orlenko
44f5688c32
Include luau to ci module tests
2023-11-16 17:54:40 +00:00
Alex Orlenko
2bee5ed33a
Support binary modules for Luau on cfg(unix)
2023-11-16 15:54:25 +00:00
Alex Orlenko
2d775695ef
Rewrite Luau require function to support module loaders.
...
Also add `package` library with `path`/`loaded`/`loaders`.
2023-11-16 14:39:17 +00:00
Alex Orlenko
34476ebf53
Support LuaJIT cdata type (produced by ffi module)
2023-11-16 13:33:23 +00:00
Alex Orlenko
5043447f23
Support Luau buffer type and and library.
...
Buffer is an object that represents a fixed-size mutable block of memory and added to Luau 0.601.
See https://luau-lang.org/library#buffer-library for more details.
2023-11-16 12:55:58 +00:00
Alex Orlenko
b879abc418
Add lua_newuserdata_t helper to mlua-sys/luau
2023-10-24 23:58:47 +01:00
Alex Orlenko
a1e39a8620
Remove MemoryState from ExtraData and retrieve using lua_getallocf (recently added to Luau)
2023-10-24 00:23:32 +01:00
Alex Orlenko
f5021daaea
Fix typo in table_traversal_sequence becnhmark
2023-10-12 11:07:00 +01:00
Alex Orlenko
ec0fb7614e
Optimize Table serialization (faster traversal)
2023-10-12 10:37:52 +01:00
Alex Orlenko
04c0763146
Optimize iterating over array part of table
2023-10-12 09:52:34 +01:00
Alex Orlenko
7d0aa7c01b
Add "table traversal sequence" benchmark
2023-10-12 09:49:36 +01:00
Alex Orlenko
2a3980ef62
Add Table::for_each method for fast (faster than pairs()) table pairs traversal.
2023-10-10 12:52:26 +01:00
Alex Orlenko
adb979761e
Optimize table traversal (pairs iterator).
2023-10-10 11:25:21 +01:00
Alex Orlenko
37d722d71c
Add table traversal benchmark
2023-10-10 11:00:58 +01:00
Alex Orlenko
6e3af593f6
Add serde benchmark
2023-10-10 00:25:47 +01:00
Alex Orlenko
54c14cc5b8
Update luajit (vendored) to 210.5.0
...
This includes switch from openresty's to vanilla luajit
2023-09-29 12:57:29 +01:00
Alex Orlenko
7f0de5790a
Update github CI actions/checkout to v4
2023-09-13 12:03:50 +01:00
Alex Orlenko
6488477bc4
rustfmt 1.72+
2023-08-27 23:26:27 +01:00
Alex Orlenko
53b7b5b70b
Fix setting userdata (static) fields when it has __index metamethod/function.
...
Closes #312
2023-08-27 23:01:37 +01:00
Alex Orlenko
fc159e0c46
v0.9.1
v0.9.1
2023-08-24 01:41:32 +01:00
Alex Orlenko
a802276c56
Fix an edge case when using invalidated (relative) userdata index after processing varargs.
...
This causes Lua API correctness check assertion in debug mode.
Fixes #311 .
2023-08-24 00:54:50 +01:00
Alex Orlenko
65b816f2f0
Update README
2023-08-21 22:00:04 +01:00
Alex Orlenko
e2b3464ec9
impl IntoLuaMulti for StdResult<(), E>
2023-08-20 14:17:18 +01:00
Alex Orlenko
89cf5bf362
impl Default for Lua
2023-08-20 12:16:11 +01:00
Alex Orlenko
bb0a6070c4
v0.9.0
v0.9.0
2023-08-17 11:38:42 +01:00
Alex Orlenko
60f1c16ddb
mlua-sys: v0.3.2
2023-08-16 14:59:16 +01:00
Alex Orlenko
17809a390c
mlua_derive: v0.9.0
2023-08-16 01:25:12 +01:00
Alex Orlenko
7662a7e4ff
Update non-static (scoped) userdata:
...
- Use the new stack api
- Support static fields constructor
- Better error messages (on bad arguments)
2023-08-15 01:22:57 +01:00
Alex Orlenko
d769a95fc5
Add Scope::create_any_userdata()
2023-08-14 17:39:51 +01:00
Alex Orlenko
0e4476c2e3
Add Lua::set_vector_metatable() method (unstable)
2023-08-12 22:46:21 +01:00
Alex Orlenko
d48a2b3f6c
Add OwnedThread type (unstable)
2023-08-12 21:18:12 +01:00
Alex Orlenko
b3592bc23e
Update mutable_globals pointer type to const (luau 0.590)
2023-08-12 17:43:25 +01:00
Alex Orlenko
052310e93d
Update doc for deny_unsupported_types option
2023-08-12 17:40:39 +01:00
Alex Orlenko
09eb7f251b
Support options for Value::serialize() implementation
...
To match `lua.from_value_with()` functionality.
2023-08-12 17:24:57 +01:00
Alex Orlenko
c137da7618
Update to Luau 0.590
2023-08-12 14:12:59 +01:00
Alex Orlenko
c0c6a33f94
Add new option sort_keys to DeserializeOptions (Lua::from_value method)
...
Closes #303
2023-08-07 11:44:52 +01:00
Alex Orlenko
0cb0a345dd
Hide clippy warning converting i32 to i32
2023-08-07 11:44:35 +01:00
Alex Orlenko
3e479be4e5
Cosmetic changes for the Value conversions + add tests
2023-08-06 23:41:27 +01:00
Alex Orlenko
170aa53e29
Change Table::raw_len() output type to usize.
2023-08-06 22:45:06 +01:00
Akase Cho
021ee946fc
Add helper functions to Value ( #299 )
...
Add helper functions to `Value`
2023-08-06 22:44:32 +01:00
Alex Orlenko
0b928fdfee
Faster table ops
2023-08-03 10:37:52 +01:00
Alex Orlenko
e858384cd4
Add table get/set benchmark
2023-08-03 10:37:39 +01:00
Alex Orlenko
c062cddd87
Fastpath IntoLua/FromLua for StdString and &str
...
This includes direct push to Lua stack and getting value from Lua stack.
2023-08-03 10:02:20 +01:00
Alex Orlenko
94a79656ad
Faster Function::call()
2023-08-03 01:16:52 +01:00
Alex Orlenko
cd0c8a4584
Optimize async functionality:
...
Rewrite using the new `push_into_stack()`/`from_stack()` methods.
Also store thread state (pointer) in `Thread` struct to avoid getting it every time.
Async userdata methods still need to have arguments stored in ref thread as stack is empty on every poll().
2023-08-03 00:56:17 +01:00
Alex Orlenko
4fff14a144
impl Drop for MultiValue
...
This action would automatically return container to the pool on drop (instead of doing it manually)
2023-08-01 11:21:26 +01:00
Alex Orlenko
196c09a0d6
New (unsafe and private) methods for IntoLua/FromLua traits: push_into_stack/from_stack.
...
They allow to push Value directly to Lua stack or get Value from Lua stack without creating MultiValue container.
This approach is a big optimization opportunity and already demonstrated great results.
For instance, obtaining `&T` for userdata methods are now work directly from stack value without copying to auxiliary stack.
2023-07-31 22:13:23 +01:00