Alex Orlenko
2beca6ebe1
Add test for Table::for_each_value
2025-09-12 11:49:37 +01:00
Alex Orlenko
40b507c3ec
Add ObjectLike::get_path helper
2025-09-04 19:12:44 +01:00
Alex Orlenko
f0806a6d62
Lower fastpath table creation limit to 1 << 26
...
When Lua is configured without memory restrictions, we use fastpath for table creation (unprotected mode).
In generally it's safe as long as we `abort()` on allocation failure.
However some Lua versions have additional restrictions on table size that we need to adhere in mlua too.
Probably Luau has the lowest limits.
Fixes #627
2025-08-13 22:49:40 +01:00
Alex Orlenko
646827a6bb
Update Table::set_metatable
...
- Return Err (instead of panic) when trying to change readonly table (Luau)
- Slightly optimize performance
2025-07-06 11:37:02 +01: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
vhyrro
0fda512938
feat(table): improve pretty-printing for simple tables and lists ( #478 )
2024-11-09 12:08:49 +00:00
Alex Orlenko
2a8db87132
Update Value tests
2024-10-18 22:50:48 +01:00
Alex Orlenko
f9ae4bf05f
Update table tests
2024-10-16 16:00:01 +01:00
Alex Orlenko
e582e7c57f
Rename get_metatable to metatable for Table/AnyUserData types
2024-09-23 11:13:16 +01:00
Alex Orlenko
4018a17e26
Combine TableExt and AnyUserDataExt traits into ObjectLike
2024-08-30 22:50:03 +01:00
Alex Orlenko
3641c98959
Prepare for Rust 2024 edition (see rust-lang/rust#123748 )
...
Replace `IntoLua(Multi)` generic with positional arg (impl trait) where possible
This allow to shorten syntax from `a.get::<_, T>` to `a.get::<T>`
2024-07-31 23:42:43 +01:00
Alex Orlenko
b4892c228c
Add rustfmt.toml
2024-07-31 13:42:37 +01:00
Alex Orlenko
7221051683
Refactor:
...
- Remove the rest of `'lua` lifetimes
- Remove Owned types
2024-07-31 13:42:35 +01:00
Alex Orlenko
908f37656a
Add to_pointer function to Function/Table/Thread
2024-02-02 09:23:16 +00: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
a9b0cdfc03
Take &str as function name in TableExt and AnyUserDataExt traits
2023-07-09 22:49:16 +01:00
Alex Orlenko
85f17a269d
Add Table:is_empty() function
2023-06-26 10:50:18 +01:00
Alex Orlenko
b169031d4e
Don't use any metamethods in Table::sequence_values() iterator.
...
This is matches with `Table::pair()` iterator.
Remove `Table::raw_sequence_values()` iterator.
2023-06-26 10:46:59 +01:00
Alex Orlenko
c2bfc9ec52
Implement PartialEq<[T]> for tables
2023-06-19 23:28:08 +01:00
Alex Orlenko
4daa7de997
Various improvements for owned types, including:
...
- tests
- shortcuts for `OwnedFunction` and `OwnedAnyUserData`
2023-04-26 15:40:48 +01:00
Alex Orlenko
fa46720f5a
Add Table::clear() method
2023-01-02 15:50:21 +00:00
Alex Orlenko
e98998d6ac
Add push/pop methods to Table
2022-10-23 23:27:17 +01:00
Alex Orlenko
170818c469
Add call() function to TableExt to call tables with __call metamethod as functions
2021-11-21 23:47:45 +00:00
Alex Orlenko
d88a4282c7
Replace macro-based implementation ToLua for arrays to const generics
2021-11-04 00:59:39 +00:00
Alex Orlenko
e26cec5db9
Drop 'feature(link_args)' (removed from nightly). Don't run tests for LuaJIT 2.0.5
2021-04-16 22:27:28 +01:00
Alex Orlenko
2fd6757f39
Add LuaJIT 2.0.5 stable support
2020-06-06 16:07:16 +01:00
Alex Orlenko
d672e19365
Add ToLua implementation for slices and arrays
2020-04-29 16:12:58 +01:00
Alex Orlenko
4e19ae6ccf
Update tests (async and table)
2020-04-20 01:14:34 +01:00
Alex Orlenko
07fc4642ae
Support vendored versions of Lua and LuaJIT
2020-01-25 20:47:31 +00:00
Alex Orlenko
27121c779d
Add raw_insert() and raw_remove() for tables (represented as lists)
2020-01-07 20:53:47 +00:00
Alex Orlenko
5eec0ef56b
Implement PartialEq trait for Value (and subtypes)
...
Add equals() method to compare values optionally invoking __eq.
2020-01-07 00:03:03 +00:00
Alex Orlenko
6f42a6cca9
Add LuaJIT support
2019-11-04 22:23:15 +00:00
Alex Orlenko
c4fd7a9faf
Lua 5.1 support
2019-10-17 17:05:42 +01:00
Alex Orlenko
cb109f6e36
Rename to mlua
2019-10-01 16:11:12 +01:00
Alex Orlenko
54f4627195
Update tests (excl. compile-fail)
2019-09-29 13:03:32 +01:00
Alex Orlenko
b23ee6a162
cargo fmt
2019-09-29 12:56:03 +01:00
kyren
65d8ad2f86
Allow non-utf8 Lua source in load / exec / eval
2018-10-01 06:00:21 -04:00
kyren
6a5ec6b387
cargo fmt
2018-09-24 22:13:42 -04:00
kyren
b8da08187d
Move integration tests into top-level tests directory
...
other minor refactors
2018-09-16 20:15:51 -04:00