Commit Graph

424 Commits

Author SHA1 Message Date
Ilya Lakhin
e5fe222de3 Shared variant of Dynamic type; All read/write access operations in Dynamic backed by Read/Write lock guards; new shared() script function 2020-07-31 10:47:14 +07:00
Stephen Chung
e505a06839 Add comparison operators to ImmutableString. 2020-07-30 13:28:25 +08:00
Stephen Chung
411539f3be Minimize usage of downcast_ref. 2020-07-28 19:11:46 +08:00
Stephen Chung
057f6435a4 Add public_only parameter to module function methods. 2020-07-27 18:10:45 +08:00
Stephen Chung
2dd4d9bcf9 Avoid warnings with only_i32. 2020-07-26 22:37:33 +08:00
Stephen Chung
6b600704a3 Avoid warnings. 2020-07-26 15:53:22 +08:00
Stephen Chung
353df6bea1 Avoid warnings in standard build. 2020-07-26 10:03:59 +08:00
Stephen Chung
e8b6d0143d Small fixups. 2020-07-20 23:23:12 +08:00
Stephen Chung
a5fa8322e9 Avoid pulling in std for no-std. 2020-07-20 20:23:35 +08:00
Stephen Chung
adc96e24bd Fix all features. 2020-07-13 19:38:50 +08:00
Stephen Chung
ff6d205c1d Make Modules::set_raw_fn public. 2020-07-07 22:59:23 +08:00
Stephen Chung
ea86888638 Add new &Module parameter to native functions. 2020-07-06 12:04:02 +08:00
Stephen Chung
368b4a480b Reformat code. 2020-07-04 22:53:00 +08:00
Stephen Chung
760c13d36e Fix features. 2020-07-01 22:21:43 +08:00
Stephen Chung
52ef223f83 Fix pad functions. 2020-06-30 18:34:32 +08:00
Stephen Chung
d6a08be223 Refactor. 2020-06-29 23:55:28 +08:00
Stephen Chung
549ef6bf7f Add oop.rhai script. 2020-06-27 17:34:39 +08:00
Stephen Chung
175c3ccaec OOP support. 2020-06-26 10:39:18 +08:00
Stephen Chung
580a62daaf Add sign function. 2020-06-25 19:19:16 +08:00
Stephen Chung
fe640e0e13 Implement function pointers. 2020-06-25 18:07:57 +08:00
Stephen Chung
58c198776f Code cleanup. 2020-06-25 11:07:46 +08:00
Stephen Chung
7cc1a3f5dc Change Map keys to ImmutableString to facilitate fast keys(). 2020-06-21 16:37:05 +08:00
Stephen Chung
2a73841549 Add support for Instant for wasm32. 2020-06-17 16:50:57 +08:00
Stephen Chung
ae6d5e13a9 Gate i128/u128 for wasm32 target. 2020-06-17 16:50:46 +08:00
Stephen Chung
e095a87ea2 Remove wasm64 target. 2020-06-17 16:49:51 +08:00
Stephen Chung
7f4f737ff2 Gate WASM target. 2020-06-17 09:54:17 +08:00
Stephen Chung
151cd1af48 Support compiling to WASM. 2020-06-16 23:47:31 +08:00
Stephen Chung
29044cc305 Merge branch 'plugins' 2020-06-16 09:36:47 +08:00
Stephen Chung
ff37e02443 Add iterator support for strings. 2020-06-16 09:34:30 +08:00
Stephen Chung
fcb5059570 Do not check for data oversize when unchecked. 2020-06-15 22:04:14 +08:00
Stephen Chung
a417bdd8e3 Support registering functions with a reference to the scripting engine. 2020-06-15 21:49:02 +08:00
Stephen Chung
4c46c7e26b Register property versions of some methods. 2020-05-30 10:30:21 +08:00
Stephen Chung
acd4685145 Convert function calls to method calls to use &mut first argument. 2020-05-28 23:57:09 +08:00
Stephen Chung
0b259d0062 Move += for ImmutableString to Engine. 2020-05-28 10:33:28 +08:00
Stephen Chung
b34d5fe3a1 Complete ImmutableString. 2020-05-26 14:14:03 +08:00
Stephen Chung
95e67c48bd Optimize op-assignment statement. 2020-05-25 20:14:31 +08:00
Stephen Chung
fca140ef55 Refine immutable strings. 2020-05-25 17:01:39 +08:00
Stephen Chung
99ea2b33c9 Use immutable strings. 2020-05-25 13:44:28 +08:00
Stephen Chung
b49e1e199a Build-in certain common operators. 2020-05-23 18:59:28 +08:00
Stephen Chung
a743c47345 Refactor. 2020-05-22 21:50:24 +08:00
Stephen Chung
80fcc40710 Use function pointers for iterators. 2020-05-20 19:27:23 +08:00
Stephen Chung
c98633dd2b Add EvalPackage. 2020-05-20 11:12:22 +08:00
Stephen Chung
4a1fd66b9f Reduce Rc/Arc wrapping for functions. 2020-05-19 22:25:57 +08:00
Stephen Chung
3295060dba Unify all functions under CallableFunction type. 2020-05-19 19:03:06 +08:00
Stephen Chung
a22f338b03 Back out NativeCallable trait. 2020-05-19 10:13:37 +08:00
Stephen Chung
a2c50879fe Fix dropping issues with StaticVec and use it everywhere. 2020-05-17 00:24:07 +08:00
Stephen Chung
be97047e51 Limit modules loading. 2020-05-15 21:40:54 +08:00
Stephen Chung
cabceb7498 Better handling of errors during function calls. 2020-05-13 21:58:38 +08:00
Stephen Chung
9d8d074940 Consistent naming of methods. 2020-05-13 20:22:05 +08:00
Stephen Chung
5a02548ebc Allocate packages with higher functions capacity. 2020-05-13 19:39:34 +08:00
Stephen Chung
30e5e2f034 Use modules to implement packages. 2020-05-13 19:21:42 +08:00
Stephen Chung
d6fd5416b0 Add replace function for characters 2020-05-12 23:30:55 +08:00
Stephen Chung
33c9be7efc Reformat. 2020-05-11 23:48:50 +08:00
Stephen Chung
414f3d3c23 Fix bug with calling a pure function method-call style. 2020-05-11 18:55:58 +08:00
Stephen Chung
4a8710a4a9 Create NativeCallable trait. 2020-05-11 13:36:50 +08:00
Stephen Chung
314ec5e4d2 Remove checks for number of arguments. 2020-05-11 10:29:33 +08:00
Stephen Chung
e0745ef069 Do not build index for multiple packages to avoid Engine creation regression. 2020-05-08 13:27:51 +08:00
Stephen Chung
5f12391ec6 Use hashed lookup for module-qualified functions and variables. 2020-05-08 00:19:08 +08:00
Stephen Chung
c607c7c428 Move Engine functions and iterators lib to Packages API. 2020-05-07 15:25:50 +08:00
Stephen Chung
34327f6e54 Avoid copying arguments in packages. 2020-05-06 23:52:47 +08:00
Stephen Chung
d75a8bc6cd Make sure all features compile correctly. 2020-05-06 19:45:17 +08:00
Stephen Chung
38e717a838 Build Module type plus engine hooks. 2020-05-05 15:00:10 +08:00
Stephen Chung
5c5e1db61e Cleanup code. 2020-05-01 10:17:19 +08:00
Stephen Chung
6351c07bc6 Fix compiling for all features. 2020-04-28 19:39:28 +08:00
Stephen Chung
9998cf8890 Avoid copying iterator sources. 2020-04-24 22:54:56 +08:00
Stephen Chung
3cb3dc8e4f Fix shift function. 2020-04-24 20:05:34 +08:00
Stephen Chung
fb8459d4de Remove unnecessary usings. 2020-04-24 20:05:28 +08:00
Stephen Chung
b6d839c8a9 Fix no_std build. 2020-04-24 12:39:24 +08:00
Stephen Chung
a4bf572d5a Filter out reg_test so it doesn't prevent compiling. 2020-04-23 13:23:25 +08:00
Stephen Chung
9a1c715aad Refine package API. 2020-04-22 14:55:40 +08:00
Stephen Chung
69733688bf Make all public API's return Box<EvalAltResult> to reduce footprint. 2020-04-21 23:25:12 +08:00
Stephen Chung
0a75479637 Refine packages plumbing. 2020-04-21 23:01:10 +08:00
Stephen Chung
e394824bf3 Fixes. 2020-04-21 00:24:25 +08:00
Stephen Chung
0306d15c04 Split core and standard libraries into packages. 2020-04-21 00:11:25 +08:00