Stephen Chung
|
58c198776f
|
Code cleanup.
|
2020-06-25 11:07: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
|
a417bdd8e3
|
Support registering functions with a reference to the scripting engine.
|
2020-06-15 21:49:02 +08:00 |
|
Stephen Chung
|
bb691a0313
|
Add maximum data size limits.
|
2020-06-14 14:25:47 +08:00 |
|
Stephen Chung
|
b24fdd7a4d
|
Change call_fn_dynamic to accept any type that is IntoIterator<Item=Dynamic>.
|
2020-06-12 19:54:55 +08:00 |
|
Stephen Chung
|
5f40a1376a
|
Implement index setters.
|
2020-06-06 13:06:00 +08:00 |
|
Stephen Chung
|
56eb659d5a
|
Unify all functions into CallableFunction type, remove FunctionsLib.
|
2020-06-05 15:14:42 +08:00 |
|
Stephen Chung
|
ec6e3daabb
|
Refactor.
|
2020-06-03 10:44:36 +08:00 |
|
Stephen Chung
|
b8da1691d3
|
Consolidate callbacks.
|
2020-06-02 13:33:16 +08:00 |
|
Stephen Chung
|
b70d38e820
|
Avoid passing position until error.
|
2020-06-01 15:25:22 +08:00 |
|
Stephen Chung
|
76d792011f
|
Add Engine::call_fn_dynamic.
|
2020-05-31 12:37:19 +08:00 |
|
Stephen Chung
|
2bcc51cc45
|
Fix bug in index expressions.
|
2020-05-30 10:27:48 +08:00 |
|
Stephen Chung
|
0374311cf6
|
Optimize hot path of operators calling.
|
2020-05-24 16:40:00 +08:00 |
|
Stephen Chung
|
e224550861
|
Move boxing of ParseError into ParseErrorType.
|
2020-05-22 18:28:13 +08:00 |
|
Stephen Chung
|
800a7bf283
|
Remove unnecessary traits and types.
|
2020-05-21 17:11:01 +08:00 |
|
Stephen Chung
|
80fcc40710
|
Use function pointers for iterators.
|
2020-05-20 19:27:23 +08:00 |
|
Stephen Chung
|
5db1fd3712
|
Do not optimize eval_expression scripts.
|
2020-05-20 00:06:19 +08:00 |
|
Stephen Chung
|
1824dced69
|
Limit expression/statement nesting depths.
|
2020-05-18 19:32:22 +08:00 |
|
Stephen Chung
|
8b5550eeb6
|
Complete StaticVec implementation.
|
2020-05-17 22:19:49 +08:00 |
|
Stephen Chung
|
be97047e51
|
Limit modules loading.
|
2020-05-15 21:40:54 +08:00 |
|
Stephen Chung
|
55c97eb649
|
Add progress tracking and operations limit.
|
2020-05-15 11:43:32 +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
|
30e5e2f034
|
Use modules to implement packages.
|
2020-05-13 19:21:42 +08:00 |
|
Stephen Chung
|
8e8816cb0c
|
Add compile_scripts_with_scope.
|
2020-05-13 11:57:07 +08:00 |
|
Stephen Chung
|
03c64688ad
|
Fix sync feature.
|
2020-05-12 16:32:22 +08:00 |
|
Stephen Chung
|
33c9be7efc
|
Reformat.
|
2020-05-11 23:48:50 +08:00 |
|
Stephen Chung
|
8aa0e2ceb4
|
Use StaticVec to avoid most allocations with function arguments.
|
2020-05-10 21:25:47 +08:00 |
|
Stephen Chung
|
0d20137d6c
|
Implement private modifier for functions.
|
2020-05-09 11:29:30 +08:00 |
|
Stephen Chung
|
e6fabe58cc
|
Unify function hash calculations, pre-hash module-qualified function calls.
|
2020-05-08 11:34:56 +08:00 |
|
Stephen Chung
|
c607c7c428
|
Move Engine functions and iterators lib to Packages API.
|
2020-05-07 15:25:50 +08:00 |
|
Stephen Chung
|
fb64adca93
|
Move fn_lib into State, and use StaticVec for function call arguments in dotting/indexing chains.
|
2020-05-07 10:00:10 +08:00 |
|
Stephen Chung
|
d75a8bc6cd
|
Make sure all features compile correctly.
|
2020-05-06 19:45:17 +08:00 |
|
Stephen Chung
|
c9571d375a
|
Add position to script error.
|
2020-05-06 00:09:04 +08:00 |
|
Stephen Chung
|
a1bcc5cd7d
|
Merge branch 'master' into namespace
|
2020-05-05 20:42:16 +08:00 |
|
Stephen Chung
|
f081040767
|
Add support for custom type indexers.
|
2020-05-05 20:38:48 +08:00 |
|
Stephen Chung
|
38e717a838
|
Build Module type plus engine hooks.
|
2020-05-05 15:00:10 +08:00 |
|
Stephen Chung
|
304c658f89
|
Use scope offset for variable access.
|
2020-04-28 23:05:03 +08:00 |
|
Stephen Chung
|
d043300ae2
|
Reduce unnecessary Option's.
|
2020-04-27 21:28:31 +08:00 |
|
Stephen Chung
|
43fdf3f962
|
FunctionsLib always exist.
|
2020-04-27 20:43:55 +08:00 |
|
Stephen Chung
|
9998cf8890
|
Avoid copying iterator sources.
|
2020-04-24 22:54:56 +08:00 |
|
Stephen Chung
|
b6d839c8a9
|
Fix no_std build.
|
2020-04-24 12:39:24 +08:00 |
|
Stephen Chung
|
5b41985ccc
|
Fix doc test in on_debug.
|
2020-04-23 13:22:53 +08:00 |
|
Stephen Chung
|
c69647d9fd
|
Change Dynamic::from_xxx to From<xxx> impl.
|
2020-04-22 12:12:13 +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
|
976f3a7f6d
|
Avoid an allocation in each function registration.
|
2020-04-20 12:43:34 +08:00 |
|
Stephen Chung
|
d3d62c7dd9
|
Anticipate number of functions to be registered.
|
2020-04-19 13:40:11 +08:00 |
|
Stephen Chung
|
f5fff828e8
|
Box errors to reduce return type footprint.
|
2020-04-18 00:14:33 +08:00 |
|
Stephen Chung
|
3a93ab8240
|
Make FunctionsLib a HashMap.
|
2020-04-16 23:58:57 +08:00 |
|
Stephen Chung
|
f8e9d66a0b
|
Remove lifetime from Engine.
|
2020-04-16 23:31:48 +08:00 |
|
Stephen Chung
|
a35518fe49
|
Split tokenizer into separate file, plus fix no_std feature.
|
2020-04-15 22:21:23 +08:00 |
|
Stephen Chung
|
5796e520ec
|
Support Dynamic return values.
|
2020-04-13 10:27:08 +08:00 |
|
Stephen Chung
|
5152a40e93
|
Change Dynamic to enum.
|
2020-04-12 23:00:06 +08:00 |
|
Stephen Chung
|
81894e52cb
|
Do not optimize single-use AST's.
|
2020-04-10 21:02:38 +08:00 |
|
Stephen Chung
|
ff8eca8a5e
|
Add parse_json.
|
2020-04-10 17:14:07 +08:00 |
|
Stephen Chung
|
adbfceb5be
|
Do not omit error enum variants.
|
2020-04-10 12:16:39 +08:00 |
|
Stephen Chung
|
518725e119
|
Add support for anonymous functions in Rust.
|
2020-04-08 23:01:48 +08:00 |
|
Stephen Chung
|
660ce6cc79
|
Change parameter input to script.
|
2020-04-08 16:57:15 +08:00 |
|
Stephen Chung
|
bcff6bfd71
|
Remove no_stdlib feature in favor of Engine::new_raw().
|
2020-04-08 10:19:03 +08:00 |
|
Stephen Chung
|
e0bb2e5c97
|
Change optimize_ast to take optimization level as parameter.
|
2020-04-08 09:30:50 +08:00 |
|
Stephen Chung
|
9f3646d9ec
|
Keep only one call_fn, adds tuples of one and zero.
|
2020-04-07 21:50:33 +08:00 |
|
Stephen Chung
|
e795a50ae2
|
Make Engine reentrant to prepare for parallel execution.
|
2020-04-07 13:23:06 +08:00 |
|
Stephen Chung
|
44d6a5e466
|
Reduce cloning.
|
2020-04-05 17:44:48 +08:00 |
|
Stephen Chung
|
e0514a4ec0
|
Remove ref modifiers.
|
2020-04-05 12:37:07 +08:00 |
|
Stephen Chung
|
3f247fd695
|
Allow passing in custom Scope to call_fn.
|
2020-04-05 12:17:31 +08:00 |
|
Stephen Chung
|
29150faef2
|
Improve AST evaluation efficiency by sharing functions.
|
2020-04-04 22:00:44 +08:00 |
|
Stephen Chung
|
d1cffac420
|
Reduce overhead of Engine by not creating hash maps until used.
|
2020-04-04 13:05:20 +08:00 |
|
Stephen Chung
|
c6216c0823
|
Add back doc for on_print and on_debug.
|
2020-04-03 17:18:30 +08:00 |
|
Stephen Chung
|
a79f2a209c
|
Make Engine Send+Sync.
|
2020-04-03 17:17:00 +08:00 |
|
Stephen Chung
|
5e7c9b47d5
|
Rename downcast to try_cast and add cast for Dynamic.
|
2020-04-02 12:35:44 +08:00 |
|
Stephen Chung
|
d7ac57c060
|
Minor code cleanup.
|
2020-04-01 09:51:33 +08:00 |
|
Stephen Chung
|
c17dc34f86
|
Refine code.
|
2020-03-30 22:19:37 +08:00 |
|
Stephen Chung
|
9f3113b11c
|
Encapsulate getters/setters.
|
2020-03-30 16:10:50 +08:00 |
|
Stephen Chung
|
ef6c6ea6d2
|
Add no_object feature to disable objects.
|
2020-03-29 17:15:12 +08:00 |
|
Stephen Chung
|
a541a4507f
|
Remove internal function.
|
2020-03-27 16:46:19 +08:00 |
|
Stephen Chung
|
337a96394f
|
Limit function calls depth.
|
2020-03-27 14:34:01 +08:00 |
|
Stephen Chung
|
56df5c49c8
|
Encapsulate FunctionsLib to hold script-defined functions.
|
2020-03-26 20:26:05 +08:00 |
|
Stephen Chung
|
a5a161ec88
|
Format getter/setter function name using constants.
|
2020-03-26 10:55:33 +08:00 |
|
Stephen Chung
|
d21f66b911
|
Fixing lint warnings
|
2020-03-24 16:57:35 +08:00 |
|
Stephen Chung
|
7b06715299
|
FIX - Errors in no_std.
|
2020-03-24 11:21:09 +08:00 |
|
Stephen Chung
|
1b4bcbcfdf
|
Add evaluate expressions.
|
2020-03-22 21:03:58 +08:00 |
|
Stephen Chung
|
b6320c0eef
|
Minor fine tuning.
|
2020-03-22 10:18:16 +08:00 |
|
Stephen Chung
|
ed996e71d6
|
Enable dot operations on constant variables.
|
2020-03-20 19:27:02 +08:00 |
|
Stephen Chung
|
6a6c5f30de
|
Add eval function.
|
2020-03-19 19:53:42 +08:00 |
|
Stephen Chung
|
cc8ec12691
|
Add more comments and examples.
|
2020-03-19 13:52:10 +08:00 |
|
Stephen Chung
|
0dc51f8e59
|
Removee debug_msgs feature.
|
2020-03-18 22:03:50 +08:00 |
|
Stephen Chung
|
019e73bc7e
|
Allow empty statements.
|
2020-03-18 18:41:18 +08:00 |
|
Stephen Chung
|
a9c65a962c
|
Split no_stdlib and no_std into two features.
|
2020-03-18 12:04:26 +08:00 |
|
Stephen Chung
|
d2951bfb6b
|
Make sure return is not an error.
|
2020-03-18 10:40:07 +08:00 |
|
Trangar
|
c8a9df0a0a
|
Added no_std support
|
2020-03-17 19:26:11 +01:00 |
|
Stephen Chung
|
706e0a0c4c
|
Make sure return is not an error.
|
2020-03-17 16:52:06 +08:00 |
|
Stephen Chung
|
372321dfe3
|
Add full optimization level for aggressive optimizing.
|
2020-03-15 22:39:58 +08:00 |
|
Stephen Chung
|
360fab7760
|
Merge branch 'chained-assignments'
|
2020-03-14 14:41:48 +08:00 |
|
Stephen Chung
|
cb6171ebcd
|
Merge branch 'constants'
|
2020-03-14 14:33:56 +08:00 |
|
Stephen Chung
|
b3a22d942a
|
Allow AST optimization based on external Scope.
|
2020-03-14 14:30:44 +08:00 |
|
Stephen Chung
|
d5adee2209
|
Allow chained assignments.
|
2020-03-14 11:51:45 +08:00 |
|
Stephen Chung
|
e5ed2f4be5
|
Update api.rs
|
2020-03-13 23:09:45 +08:00 |
|