Alex Orlenko
86d63ef27b
Fix missing BUFSIZ for wasm32 in libc
2026-01-22 15:46:31 +00:00
Alex Orlenko
3c40cfe199
mlua-sys: Use 2024 edition
2026-01-22 14:09:14 +00:00
Alex Orlenko
3366f47d40
Minor Lua 5.2 fixes
2026-01-20 15:28:33 +00:00
Alex Orlenko
0b5ef91f44
Update Lua 5.2 FFI bindings (add buffer manipulation, etc)
2026-01-20 14:29:35 +00:00
Alex Orlenko
b1c69d3005
Use to_bits comparison to check if a float value can be represented as an integer losslessly.
...
This allows to simplify the code while still maintaining "negative zeros" edge case.
Thanks @JasonHise for the suggestion.
2025-07-25 21:25:08 +01:00
Alex Orlenko
815d1bd7c9
Better handling negative zeros to match Lua 5.3+ behavior
...
In Lua 5.3+ the function `lua_isinteger` returns "false" for -0.0 numbers.
In earlier Lua versions we should follow the same behavior to avoid losing the sign when converting to Integer.
Close #618
2025-07-25 14:32:47 +01:00
Alex Orlenko
8b7a85076a
mlua-sys: Prepare to 2024 edition
2025-05-06 15:47:14 +01:00
Alex Orlenko
64b1d152b9
Deprecate Lua::load_from_finction and replace it with Lua::register_module and Lua::preload_module instead.
2025-04-26 13:42:07 +01:00
Alex Orlenko
12e61e01f6
Restrict access to Luau VM from UserData destructors.
...
It's unsafe to make almost any Lua calls when userdata destructor is running.
This can cause recursive GC run and crash.
See https://github.com/luau-lang/luau/pull/510 for some details.
2025-04-05 10:31:39 +01:00
Alex Orlenko
95c623e94d
Use c string literal where appropriate
2025-03-21 15:57:15 +00:00
Alex Orlenko
edbf1e9150
Change Lua library name constants from &str to *const c_char.
...
It makes easier to pass them to Lua API functions.
2025-03-14 23:10:14 +00:00
Alex Orlenko
69011a89d2
Revert "Add initial pluto support"
...
This reverts commit 0ed11e4134 .
2025-03-14 22:59:06 +00:00
Alex Orlenko
0ed11e4134
Add initial pluto support
...
Pluto is a superset of Lua 5.4 with a focus on general-purpose programming.
`pluto` feature also enables `lua54` feature since they are compatible and share the same API.
2025-03-14 11:38:07 +00:00
Alex Orlenko
ecc09c4387
Add luaL_loadbufferenv helper to all Lua versions
2024-08-25 17:29:58 +01:00
Alex Orlenko
b4892c228c
Add rustfmt.toml
2024-07-31 13:42:37 +01:00
Yiyu Lin
b62f2ee0f7
chore: make clippy happy ( #388 )
...
Co-authored-by: hzlinyiyu <hzlinyiyu@corp.netease.com >
2024-03-25 13:26:06 +00:00
Alex Orlenko
3c801e7b17
Expose internal POLL_PENDING constant (hidden)
2024-01-20 15:52:00 +00:00
Alex Orlenko
c0a0983025
mlua-sys: always inline lua_error
2024-01-03 11:31:39 +00:00
Alex Orlenko
69ff0c5509
mlua-sys: fix Lua 5.2 lua_sethook definition
2024-01-03 10:22:42 +00:00
ByteDream
0b9a85e183
Add lua emscripten support ( #338 )
2023-12-14 14:54:57 +00:00
Peter Marheine
e3f34f319c
Correct C return type for lua_error
...
The definition of lua_error in all of Lua 5.1 through 5.4 says lua_error
returns int, but the Rust definition of the same function treats it as
void (because it's known not to return). This causes link-time errors when
building for wasm targets because the wasm linker is aware of function return
types and errors out if they differ between definition and declaration.
2023-12-06 21:16:52 +11:00
Alex Orlenko
9f5325ef2f
Use c-unwind ABI (Rust 1.71+)
2023-07-22 23:54:30 +01:00
Alex Orlenko
df9251fb52
Support LUA_LIB_NAME in module mode for windows.
...
In this mode we will link with the particular lua library.
2023-07-21 10:34:26 +01:00
Alex Orlenko
483e6be207
Support vendored module mode for windows (raw-dylib linking)
...
This is requires Rust 1.71+
2023-07-20 00:43:57 +01:00
Alex Orlenko
4306e6e978
Add Value::to_string() method similar to luaL_tolstring.
...
It uses `__tostring` metamethod if set.
Closes #279
2023-05-27 01:29:08 +01:00
Alex Orlenko
15dc0e9f23
Move ffi module into mlua-sys crate
2023-04-12 23:23:34 +01:00