189 Commits

Author SHA1 Message Date
Stephen Chung
0a7cca9910 Add Dynamic::try_cast_raw 2023-05-06 02:08:32 +08:00
Stephen Chung
72cfd42ab7 Code refactor. 2023-04-28 15:05:31 +08:00
Stephen Chung
3dbfc1e99f Cleanup code. 2023-04-27 15:24:55 +08:00
Stephen Chung
76e6c1b9e4 Fix bug on OOP-style calling of exported map object. 2023-04-27 13:19:28 +08:00
Stephen Chung
f49ce33a88 Use .take instead of mem::take(). 2023-04-21 10:20:19 +08:00
Stephen Chung
0206f776db Add is_symbol_disabled and is_custom_keyword. 2023-04-11 11:38:48 +08:00
Stephen Chung
407d376a61 Encode pure in CallableFunction variant. 2023-04-11 10:26:23 +08:00
Stephen Chung
637728de6a Fix builds. 2023-03-30 17:41:21 +08:00
Stephen Chung
34c7dabe44 Add is_def_fn with 3 parameters. 2023-03-30 16:43:15 +08:00
Stephen Chung
2a98d38a7e is_shared is made reserved. 2023-03-30 16:26:58 +08:00
Stephen Chung
534b7bbab3 Rename auto_restore! to defer! 2023-03-25 21:13:34 +08:00
Stephen Chung
2e724b804e Remove indirection. 2023-03-23 13:37:10 +08:00
Stephen Chung
3c7cd8e278 Use debug_assert. 2023-03-23 09:12:48 +08:00
Stephen Chung
9d4972f6d3 Fix builds. 2023-03-22 16:16:33 +08:00
Stephen Chung
e60d0fc0bc Add typed methods definition. 2023-03-22 16:05:25 +08:00
Stephen Chung
c62162b3c5 Use {} style for auto_restore. 2023-03-17 06:15:59 +08:00
Stephen Chung
906ab3a295 Add short-circuits to op-assignments. 2023-03-09 22:03:27 +08:00
Stephen Chung
e8dfabf967 Add floating-point. 2023-03-08 22:48:31 +08:00
Stephen Chung
80917bfad2 Fix build. 2023-03-08 22:03:03 +08:00
Stephen Chung
8fe5bac3e9 Short-circuit primary data operations. 2023-03-08 21:50:57 +08:00
Stephen Chung
fa4096e91e Fine tune Engine size. 2023-03-07 16:52:37 +08:00
Stephen Chung
86ccb37029 Simplify code. 2023-02-28 22:33:44 +08:00
Stephen Chung
51581cdef5 Make Engine faster to create. 2023-02-25 19:57:19 +08:00
Stephen Chung
14e205cabc Satisfy msrv by removing then_some. 2023-02-21 18:16:03 +08:00
Stephen Chung
129a5c6e86 Use then/then_some to simplify. 2023-02-21 16:36:57 +08:00
Stephen Chung
d0a47d7f66 Refactor to do more pre-calculation work. 2023-02-12 21:50:32 +08:00
Stephen Chung
9f18d6519d Use debug_assert!. 2023-02-12 00:13:54 +08:00
Stephen Chung
9cb5154979 Refactor FnCallHashes. 2023-02-11 12:52:07 +08:00
Stephen Chung
e177a5648a Remove hashing hack. 2023-02-11 11:56:20 +08:00
Stephen Chung
4fe80a2026 Use &Token for op. 2023-02-10 23:42:13 +08:00
Stephen Chung
6400b33b1b Use bitflag options for chains parsing. 2023-01-30 12:31:33 +08:00
Stephen Chung
ea3efe654c Avoid unnecessarily creating Scope. 2023-01-11 11:42:46 +08:00
Stephen Chung
1a00ca0905 Change try_for_each to for. 2022-12-29 13:35:42 +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
d47bfa431a Revise built-in macros. 2022-12-26 11:46:11 +08:00
Stephen Chung
80ccd75514 Satisfy clippy. 2022-12-22 17:34:58 +08:00
Stephen Chung
babc0b5466 Remove Dynamic::NULL, use .as_deref_mut() for this_ptr. 2022-12-20 16:52:55 +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
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
67a7ab4069 Move encapsulated environment out of ScriptFnDef. 2022-12-12 16:06:24 +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
e2bd0705b1 Refine auto_restore syntax. 2022-12-04 22:47:10 +08:00
Stephen Chung
de0707f64f Use macro auto_restore!. 2022-12-04 14:06:54 +08:00
Stephen Chung
4998eb6139 Add has_context to plugin functions. 2022-12-03 17:03:15 +08:00