Alex Orlenko
806817212e
Rename Lua::init_from_ptr to Lua::get_or_init_from_ptr.
...
Return reference to `&Lua` with unbound lifetime (chosen by user).
2025-03-21 21:28:30 +00:00
Alex Orlenko
95c623e94d
Use c string literal where appropriate
2025-03-21 15:57:15 +00:00
Alex Orlenko
4fe7d151a1
Refactor userdata-wrappers feature.
...
Support borrowing underlying data in `UserDataRef` and `UserDataRefMut`.
2025-03-21 14:19:38 +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
0ce599aff2
Update test case
2025-03-13 17:41:13 +00:00
Alex Orlenko
1ebb4b468a
Support 52-bit integers for Luau
...
Simply to float conversion (it actually never fails or goes out of range)
2025-03-13 16:18:44 +00:00
Alex Orlenko
ae7cdcb934
Remove (internal) borrow counter and use instead "locked" flag and strong reference counter
2025-02-14 14:41:37 +00:00
Alex Orlenko
a01b032c35
Add bstr/serde dependency if serialize feature flag is enabled
2025-02-11 13:39:21 +00:00
Alex Orlenko
18497f1528
Add library constants support for Luau compiler.
...
Add ability to specify compile-time constants for known library members.
2025-02-11 00:16:22 +00:00
Alex Orlenko
28e8f56989
Fix tests
2025-02-09 22:17:25 +00:00
Alex Orlenko
c1f8abba9e
Do not allow recursive warnings (Lua 5.4)
2025-02-09 15:08:52 +00:00
Alex Orlenko
5bbd23ed1a
Fix hook tests
2025-02-08 11:51:38 +00:00
Alex Orlenko
74b4601b48
Rework Lua hooks:
...
- Support global hooks inherited by new threads
- Support thread hooks, where each thread can have its own hook
This should also allow to enable hooks for async calls.
Related to #489 #347
2025-02-07 22:42:17 +00:00
Alex Orlenko
2b6172ef38
Fix tests
2025-02-05 19:01:07 +00:00
Joel Natividad
20f7ce097d
Fix typos ( #522 )
...
* fix various typos in the codebase
* fix typos in CHANGELOG.md
2025-02-05 16:16:20 +00:00
Alex Orlenko
fca38a6637
Imporove BorrowedStr/BorrowedBytes ergonomic.
...
Implement `FromLua` and `IntoLua` for these types to allow working with them directly.
2025-01-30 23:07:02 +00:00
Alex Orlenko
cdd6a99136
Support Thread::resume_error call (Luau)
...
This method uses Luau-specific C API extension `lua_resumerror`
that allow to throw an error immediately when resuming a thead.
Closes #500 #513
2025-01-28 22:57:26 +00:00
Alex Orlenko
8574682ffc
Improve From/Into Lua char conversion
2025-01-28 10:41:10 +00:00
tk
47bc372096
impl FromLua/IntoLua for char (#516 )
2025-01-28 10:10:28 +00:00
Alex Orlenko
d376cb9403
Enable Thread::reset() for all Lua versions
2025-01-28 10:08:16 +00:00
Alex Orlenko
ea5ecccf02
Change AsyncThread<A, R> to AsyncThread<R>.
...
Push arguments in `Thread::into_async()` to the thread during the call instead of first poll.
The pushed arguments will be automatically used on resume.
Fixes #508 and relates to #500 .
2025-01-28 10:08:08 +00:00
Alex Orlenko
cd4091f64d
Allow exhaustive match on Value.
...
It was not possible because `ValueRef` variant in `Value::Other` was private.
Closes #502 and #503
2024-12-10 23:37:19 +00:00
Alex Orlenko
cacd3dc70f
Add Table::set_safeenv method (Luau)
2024-12-04 10:40:49 +00:00
Alex Orlenko
1c6b6ad801
Fix tests
2024-12-01 12:54:35 +00:00
Alex Orlenko
5fd96c7908
Don't run GC finalizers on ref thread.
...
If this happen then we don't have full access to the ref thread stack.
Fixes #491
2024-11-30 01:00:31 +00:00
Alex Orlenko
55a5d7ef10
Protect Lua(u) during chunk loading if memory limit is enforced
...
Relates to #488
2024-11-27 00:34:21 +00:00
Alex Orlenko
ee7ced6334
Add Chunk::wrap method
2024-11-22 14:40:52 +00:00
Alex Orlenko
7ce6b97da9
Add String::wrap method to wrap arbitrary AsRef<[u8]>
2024-11-22 11:48:20 +00:00
Alex Orlenko
4891a6ac10
Fix utf-8 test when bstr v1.11 switchted to LowerHex
2024-11-17 18:01:05 +00:00
Alex Orlenko
8c889cc353
Add String::display method
2024-11-09 14:24:43 +00:00
Alex Orlenko
92a8203e1c
Fix formatting
2024-11-09 13:58:06 +00:00
Alex Orlenko
b34b90eca3
Fix wrong formatting table with string keys that are numbers
2024-11-09 13:51:55 +00:00
Alex Orlenko
a3cd25db7a
Support Luau 0.650 native vector library
2024-11-09 12:44:00 +00:00
vhyrro
0fda512938
feat(table): improve pretty-printing for simple tables and lists ( #478 )
2024-11-09 12:08:49 +00:00
Alex Orlenko
c7094d470f
Add Scope::create_any_userdata to create Lua objects from any non-static Rust types.
2024-11-07 19:44:18 +00:00
Alex Orlenko
a7d0691e10
Add AnyUserData::destroy method
2024-11-07 16:12:20 +00:00
Alex Orlenko
1f32754f05
Relax UserDataBorrowRef restrictions to allow recursive calls
2024-11-03 12:18:00 +00:00
Alex Orlenko
c2eab173c5
Add userdata-wrappers feature
...
This feature allow to opt into `impl UserData` for `Rc<T>`/`Arc<T>`/`Rc<RefCell<T>>`/`Arc<Mutex<T>>` where `T: UserData`
Close #470
2024-11-03 11:48:47 +00:00
Alex Orlenko
bb311349ec
Switch between shared and exclusive lock for UserDataRef depending if T: Sync or not.
2024-11-02 10:38:25 +00:00
Alex Orlenko
5b8681dcf2
Add Scope::add_destructor to attach custom destructors
2024-10-31 14:35:21 +00:00
Alex Orlenko
4e9a17707b
Fix tests
2024-10-31 09:23:03 +00:00
Alex Orlenko
a8d5f23818
Add Lua::try_app_data_ref and Lua::try_app_data_mut
2024-10-30 15:22:55 +00:00
Alex Orlenko
5ec4e0338a
Add From<Vec> and Into<Vec> support to MultiValue and Variadic types
2024-10-30 13:03:08 +00:00
Alex Orlenko
446d63a77e
More tests
2024-10-23 15:50:58 +01:00
Alex Orlenko
c702077028
More Lua values conversion tests
2024-10-19 15:08:51 +01:00
Alex Orlenko
e122f90837
More Either tests
2024-10-19 11:20:25 +01:00
Alex Orlenko
c638d90b02
Fix test_inspect_stack
2024-10-19 00:11:05 +01:00
Alex Orlenko
2a8db87132
Update Value tests
2024-10-18 22:50:48 +01:00
Alex Orlenko
cbae4fe59c
More async tests
2024-10-18 22:50:15 +01:00