Commit Graph

2720 Commits

Author SHA1 Message Date
Stephen Chung
ea3efe654c Avoid unnecessarily creating Scope. 2023-01-11 11:42:46 +08:00
Stephen Chung
6d64a75bd2 Avoid creating new Scope. 2023-01-11 09:34:54 +08:00
Stephen Chung
dd2a0a64aa Remove Token::NONE. 2023-01-08 21:15:16 +08:00
Stephen Chung
541951ec3f Remove macro_use in types. 2023-01-06 15:43:53 +08:00
Stephen Chung
ae02668d08 Mark pure. 2023-01-03 14:00:18 +08:00
Mathieu Lala
af2e331b0f
fix: not #cfg 2022-12-30 20:45:26 +01:00
Mathieu Lala
c5002801c8
ci: add feature powerset & style: used #[cfg(all(..))] 2022-12-30 19:29:27 +01:00
Mathieu Lala
9af5b1c78e
fix: default clippy lints 2022-12-30 18:07:39 +01:00
Stephen Chung
a478d57e01 Fix builds. 2022-12-30 22:21:22 +08:00
Stephen Chung
ee8e745429 Change fold to for. 2022-12-29 17:51:27 +08:00
Stephen Chung
1a00ca0905 Change try_for_each to for. 2022-12-29 13:35:42 +08:00
Stephen Chung
858a6ad588 Make parse call arguments uniform. 2022-12-29 12:18:41 +08:00
Stephen Chung
00c434eb71 Use Option<Token> instead of Token::NONE. 2022-12-27 22:51:38 +08:00
Stephen Chung
bb1136e8ad Refine what can be called in method style. 2022-12-27 22:06:51 +08:00
Stephen Chung
7c00b74916 Allow string interpolation to work with no packages. 2022-12-27 10:09:40 +08:00
Stephen Chung
07f522e6d7 Fix array bug. 2022-12-26 22:05:29 +08:00
Stephen Chung
c5cb2d5e0f Simplify Array::pad. 2022-12-26 17:32:46 +08:00
Stephen Chung
d47bfa431a Revise built-in macros. 2022-12-26 11:46:11 +08:00
Stephen Chung
52d23522e6 Add for_each for arrays. 2022-12-25 12:44:49 +08:00
Stephen Chung
fd401f3048 Add array API with closure variation that binds to this. 2022-12-24 19:37:06 +08:00
Stephen Chung
ffa1f5fb4a Fix builds. 2022-12-23 18:54:55 +08:00
Stephen Chung
cb09393dba Encapsulate into FlowControl type. 2022-12-23 14:26:06 +08:00
Stephen Chung
80ccd75514 Satisfy clippy. 2022-12-22 17:34:58 +08:00
Stephen Chung
bbd94dbffb Use document-features. 2022-12-22 09:33:12 +08:00
Stephen Chung
481546124a Fix builds. 2022-12-21 13:58:47 +08:00
Stephen Chung
9bf3a9d78f Add Engine::compact_script. 2022-12-21 13:54:54 +08:00
Stephen Chung
d94f362b51 Fix up find/find_map. 2022-12-20 22:27:29 +08:00
Stephen Chung
6e40215631 Merge branch 'main' of https://github.com/rhaiscript/rhai 2022-12-20 22:19:11 +08:00
Fabrizio Sestito
06b40723e4
Add array find and find_map methods 2022-12-20 13:28:24 +01:00
Stephen Chung
babc0b5466 Remove Dynamic::NULL, use .as_deref_mut() for this_ptr. 2022-12-20 16:52:55 +08:00
Stephen Chung
99080be91d Move to FnPtr. 2022-12-20 14:43:30 +08:00
Stephen Chung
cabab14475 Deprecate array methods that take function names as parameters. 2022-12-19 22:42:21 +08:00
Stephen Chung
b880893154 Allow negative shift bits. 2022-12-18 14:51:38 +08:00
Stephen Chung
ee53108d3a Fixes Miri faults. 2022-12-15 22:33:11 +08:00
Stephen Chung
da7a887f67 Change to struct variants for better flexibility. 2022-12-14 12:07:33 +08:00
Stephen Chung
82a455b4d7 Add Dynamic::deep_scan. 2022-12-13 13:35:23 +08:00
Stephen Chung
3cc016b03c Add Index/IndexMut and iter_curry/iter_curry_mut to FnPtr. 2022-12-13 13:34:17 +08:00
Stephen Chung
db7410776a Recursively store encapsulated environment into values. 2022-12-13 13:06:28 +08:00
Stephen Chung
d350a948e7 Allow exporting function pointers from modules. 2022-12-12 18:31:02 +08:00
Stephen Chung
ec5ad320a1 Fix tests. 2022-12-12 16:17:51 +08:00
Stephen Chung
67a7ab4069 Move encapsulated environment out of ScriptFnDef. 2022-12-12 16:06:24 +08:00
Stephen Chung
397b5eb39d Move restore up one level. 2022-12-11 21:50:47 +08:00
Stephen Chung
2c55c248fb Fix builds. 2022-12-11 17:18:14 +08:00
Stephen Chung
1f815f995f Speed up FnPtr::call when there is a linked scripted function. 2022-12-11 16:55:30 +08:00
Stephen Chung
91f149270a Add link to scripted function definition. 2022-12-11 00:08:25 +08:00
Stephen Chung
8bcb771281 Refine auto_restore syntax. 2022-12-10 22:37:13 +08:00
Stephen Chung
f15a9a7c9c Minor cleanup. 2022-12-09 20:42:55 +08:00
Stephen Chung
30ff208104 Improve reify! syntax. 2022-12-09 16:41:01 +08:00
Stephen Chung
3d5908480a Use fluent style. 2022-12-09 10:04:44 +08:00
Stephen Chung
a391f26920 Refine expression nesting level. 2022-12-08 17:18:40 +08:00
Stephen Chung
e400b3627c Fix build. 2022-12-06 23:45:12 +08:00
Stephen Chung
90998f4f14 Allow closures in parse expressions. 2022-12-06 21:41:38 +08:00
Stephen Chung
e2bd0705b1 Refine auto_restore syntax. 2022-12-04 22:47:10 +08:00
Stephen Chung
3163d9d1d6 Fix msrv. 2022-12-04 16:12:34 +08:00
Stephen Chung
de0707f64f Use macro auto_restore!. 2022-12-04 14:06:54 +08:00
Stephen Chung
58769dbb52 Use unwrap instead of expect. 2022-12-03 22:55:40 +08:00
Stephen Chung
4998eb6139 Add has_context to plugin functions. 2022-12-03 17:03:15 +08:00
Stephen Chung
249180b1e0 Fix builds. 2022-12-03 16:29:19 +08:00
Stephen Chung
55922b5c20 Hard code constant checking. 2022-12-03 16:20:13 +08:00
Stephen Chung
ffc8a7f85c Fix builds. 2022-12-03 12:08:35 +08:00
Stephen Chung
4e33bcfa0a Use constant booleans for trait. 2022-12-03 11:23:34 +08:00
Stephen Chung
09272d08e9 Add documentation. 2022-12-03 10:05:15 +08:00
Stephen Chung
f41bdb7769 Hard code number of parameters. 2022-12-03 09:14:16 +08:00
Stephen Chung
e53be6e8ed Avoid allocations in metadata. 2022-12-02 16:44:45 +08:00
Stephen Chung
e10576abff Process block comments better. 2022-12-02 14:06:31 +08:00
Stephen Chung
eb5b15e954 Capture global module docs in JSON. 2022-12-01 23:35:26 +08:00
Stephen Chung
ed423740c9 Use FnArgsVec for params. 2022-12-01 17:45:33 +08:00
Stephen Chung
0c4935febb Merge multiple doc-comment lines into one. 2022-12-01 14:35:45 +08:00
Stephen Chung
28640a6fe4 code cleanup. 2022-12-01 14:24:08 +08:00
Stephen Chung
acadb58f4f Add short-cut to !. 2022-11-30 14:11:57 +08:00
Stephen Chung
fc4c8731f0 Add !in. 2022-11-30 14:11:09 +08:00
Stephen Chung
c509cc896d Revise documentation. 2022-11-29 15:50:58 +08:00
Stephen Chung
0c85f0c796 Code cleanup and refactor. 2022-11-28 23:24:22 +08:00
Stephen Chung
29a397b216 Refine #[must_use] 2022-11-28 16:36:40 +08:00
Stephen Chung
f458f18ffa Refine error message. 2022-11-27 22:35:17 +08:00
Stephen Chung
fcc7589ffc Refine error display. 2022-11-27 18:00:02 +08:00
Stephen Chung
549193f49b Use operator. 2022-11-27 17:21:44 +08:00
Stephen Chung
4ab306607d Fix bug. 2022-11-27 17:21:07 +08:00
Stephen Chung
e8e1706d98 Use as_deref(). 2022-11-25 23:03:20 +08:00
Stephen Chung
d645d8271c More code refactor. 2022-11-25 20:42:16 +08:00
Stephen Chung
fbe30b8d0e Change debugger init signature. 2022-11-25 13:20:03 +08:00
Stephen Chung
6db9870fb1 Fix builds. 2022-11-25 12:27:05 +08:00
Stephen Chung
ccc3d51e0f Reduce size of ParseState. 2022-11-25 12:14:40 +08:00
Stephen Chung
ef920e2b8d Factor out metadata in FuncInfo. 2022-11-25 12:14:37 +08:00
Stephen Chung
0286a52084 Use SusLock to hold pre-calculated indexer hashes. 2022-11-25 11:49:00 +08:00
Stephen Chung
6600862c22 Satisfy clippy. 2022-11-25 09:46:13 +08:00
Stephen Chung
2bf8e610a3 Reduce size of Engine. 2022-11-24 22:58:42 +08:00
Stephen Chung
cefe3f1715 Reduce Module size. 2022-11-24 22:25:19 +08:00
Stephen Chung
bda8c2b636 Reduce data sizes. 2022-11-24 20:35:56 +08:00
Stephen Chung
6c06481457 Fix typo. 2022-11-24 17:16:12 +08:00
Stephen Chung
c9d8714fe6 Reduce size of ParseState. 2022-11-24 17:08:43 +08:00
Stephen Chung
b4ef89b596 Fix sync build. 2022-11-24 16:05:23 +08:00
Stephen Chung
d1913edf3c Use Engine's interner. 2022-11-24 15:10:17 +08:00
Stephen Chung
6791ef64da Remove crate:: from types. 2022-11-24 11:00:47 +08:00
Stephen Chung
b1e8b48471 Remove extra clippy. 2022-11-23 18:51:11 +08:00
Stephen Chung
a8f12cb212 Fix only_i32 build. 2022-11-23 18:46:40 +08:00
Stephen Chung
46514bbc85 Fix builds. 2022-11-23 18:02:10 +08:00
Stephen Chung
02ef119603 Fix builds. 2022-11-23 17:23:54 +08:00
Stephen Chung
3e7408511e Satisfy more clippy. 2022-11-23 16:14:11 +08:00
Stephen Chung
9f5b68549a Deserialize large numbers. 2022-11-23 16:13:57 +08:00
Stephen Chung
31292e683d Satisfy Clippy. 2022-11-23 13:24:14 +08:00
Stephen Chung
2c73d403f7 EvalContext::scope_mut returns &mut Scope. 2022-11-23 13:22:47 +08:00
Stephen Chung
4e27039521 Use bitflags. 2022-11-23 11:36:30 +08:00
Stephen Chung
d911327242 Use SmartString for buffers and literal_syntax can panic. 2022-11-22 23:30:43 +08:00
Stephen Chung
7c4e751d33 Fix builds. 2022-11-22 16:02:04 +08:00
Stephen Chung
b2e4efd872 Fine tune serde. 2022-11-22 15:38:16 +08:00
Stephen Chung
be040287dc Make Engine::set_XXX chainable. 2022-11-22 13:11:47 +08:00
Stephen Chung
d151c87687 Change call_fn_raw to call_fn_with_options. 2022-11-21 23:42:29 +08:00
Stephen Chung
3feff3618a Optimize .type_of() and .is_shared(). 2022-11-21 16:27:12 +08:00
Stephen Chung
56631b1b66 Minor code refactor. 2022-11-20 19:12:29 +08:00
Stephen Chung
f7c8238613 Remove volatile warning from TypeBuilder API. 2022-11-19 19:04:28 +08:00
Stephen Chung
4304da7a47 Fix builds. 2022-11-19 18:57:15 +08:00
Stephen Chung
62d707ff84 Simplify chaining code. 2022-11-19 18:41:51 +08:00
Stephen Chung
bf845fbd7a Export CallableFunction. 2022-11-17 18:05:52 +08:00
Stephen Chung
9e5e18af61 Export locked_read and locked_write under internals. 2022-11-15 11:22:00 +08:00
Stephen Chung
8815b88baf Merge branch 'main' of https://github.com/rhaiscript/rhai 2022-11-15 10:02:17 +08:00
ltabis
c41db6dde5 chore: only export locked_read & locked_write. 2022-11-14 15:17:37 +01:00
Stephen Chung
7f84a9f42b Fix premature promotion in optimizer. 2022-11-13 21:05:14 +08:00
ltabis
379dc11b3d Merge branch 'main' of github.com:ltabis/rhai 2022-11-11 12:10:34 +01:00
ltabis
0790e5bc96 chore: gate func::native export under the internals flag. 2022-11-11 12:10:19 +01:00
Stephen Chung
0984f2d4df Fix docs. 2022-11-11 16:46:28 +08:00
Lucas Tabis
68083792f0
Merge branch 'rhaiscript:main' into main 2022-11-11 09:26:06 +01:00
Stephen Chung
d3fc711f33 Add missing doc comment. 2022-11-11 15:01:38 +08:00
ltabis
a381a485ec chore: sync fork. 2022-11-10 21:10:33 +01:00
ltabis
ae860ab4fb chore: change visibility to pub for native module. 2022-11-10 21:08:53 +01:00
Stephen Chung
fca71b5ed2 Reduce call to Module::is_empty. 2022-11-10 23:57:46 +08:00
Stephen Chung
013ee223ee Cleanup. 2022-11-10 14:25:48 +08:00
Stephen Chung
54353c6676 Fix no_function build. 2022-11-10 12:16:23 +08:00
Stephen Chung
3a028f2642 Move lib into global. 2022-11-10 11:49:10 +08:00
Stephen Chung
3800a6d9f5 Remove indirection. 2022-11-09 21:48:54 +08:00
Stephen Chung
1b248b5af7 Speed up static hashing default case. 2022-11-09 21:16:28 +08:00
Stephen Chung
a07eb65f02 Merge branch 'main' of https://github.com/rhaiscript/rhai 2022-11-09 20:24:37 +08:00
Stephen Chung
a1d42b826a Simplify Dynamic::as_XXX calls. 2022-11-09 20:18:11 +08:00
l1npengtul (Lua)
ad080ff944
Merge branch 'rhaiscript:main' into static_hash_finetune 2022-11-09 03:15:24 -08:00
l1npengtul
abe625c336 fix CI 2022-11-09 20:14:36 +09:00
Stephen Chung
ce046422f0 Add Dynamic::is_XXX API. 2022-11-09 12:44:57 +08:00
Stephen Chung
ad018aaae3 Move FloatWrapper into types. 2022-11-08 23:17:31 +08:00
Stephen Chung
ae1e19c98a Fix builds. 2022-11-08 21:41:00 +08:00
Stephen Chung
e93923b3b6 Move level into GlobalRuntimeState. 2022-11-08 21:28:20 +08:00
Stephen Chung
5bae4d8a19 Fix builds. 2022-11-08 16:37:35 +08:00
Stephen Chung
8f128f37f0 Add Dynamic::NULL to simplify this pointer binding. 2022-11-08 16:16:42 +08:00
Stephen Chung
6053aa1641 Clean up types. 2022-11-08 15:01:40 +08:00
Stephen Chung
f4e2901353 Use RestoreOnDrop. 2022-11-08 11:52:46 +08:00
Stephen Chung
cba914db95 Fix no_function build. 2022-11-07 16:34:25 +08:00
Stephen Chung
b4529b6a64 Add storage API for NativeCallContext. 2022-11-07 16:19:10 +08:00
Stephen Chung
0c79471fd3 Change lib to &[Shared<Module>] and remove dummy lifetimes. 2022-11-07 16:18:59 +08:00
l1npengtul
a8ae82e3d8 add lifetime parameter 2022-11-05 22:53:58 +09:00
l1npengtul
c49948def4 address concerns 1, 2 2022-11-05 22:46:08 +09:00
Stephen Chung
6e0f8b5007 Fix no-std build. 2022-11-05 10:49:34 +08:00
Stephen Chung
54aa89515e Fix no_module build. 2022-11-04 22:00:21 +08:00