Stephen Chung
|
1b7ffdf408
|
Better type display.
|
2020-07-03 10:45:01 +08:00 |
|
Stephen Chung
|
760c13d36e
|
Fix features.
|
2020-07-01 22:21:43 +08:00 |
|
Stephen Chung
|
e614790897
|
Enable function pointers even under no_function.
|
2020-06-30 18:34:58 +08:00 |
|
Stephen Chung
|
d6a08be223
|
Refactor.
|
2020-06-29 23:55:28 +08:00 |
|
Stephen Chung
|
aac04a5e53
|
Remove modules from Scope and use separate stack.
|
2020-06-27 23:56:24 +08:00 |
|
Stephen Chung
|
f3bde843cb
|
Fix scripts and tests.
|
2020-06-27 21:19:53 +08:00 |
|
Stephen Chung
|
175c3ccaec
|
OOP support.
|
2020-06-26 10:39:18 +08:00 |
|
Stephen Chung
|
fe640e0e13
|
Implement function pointers.
|
2020-06-25 18:07:57 +08:00 |
|
Stephen Chung
|
b08f85a8b1
|
Refine side_effects test.
|
2020-06-22 09:46:36 +08:00 |
|
Stephen Chung
|
d728ac6758
|
Edit documentation.
|
2020-06-22 00:03:45 +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
|
1adf3cc39a
|
Support for trailing commas.
|
2020-06-16 22:14:46 +08:00 |
|
Stephen Chung
|
ff37e02443
|
Add iterator support for strings.
|
2020-06-16 09:34:30 +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
|
0c6a939c66
|
Better convert LexError to ParseError.
|
2020-06-14 16:56:36 +08:00 |
|
Stephen Chung
|
bb691a0313
|
Add maximum data size limits.
|
2020-06-14 14:25:47 +08:00 |
|
Stephen Chung
|
954f971ddf
|
New optimizer test.
|
2020-06-13 21:57:46 +08:00 |
|
Stephen Chung
|
5275778952
|
Add test to call_fn with String parameter.
|
2020-06-12 18:46:36 +08:00 |
|
Stephen Chung
|
9d91349513
|
Refine position display in error messages.
|
2020-06-12 18:04:16 +08:00 |
|
Stephen Chung
|
a4cabc1ac7
|
Better String parameter error message.
|
2020-06-08 14:10:06 +08:00 |
|
Stephen Chung
|
e942ef358c
|
Transparently convert &str to ImmutableString for register_fn.
|
2020-06-07 17:54:33 +08:00 |
|
Stephen Chung
|
5f40a1376a
|
Implement index setters.
|
2020-06-06 13:06:00 +08:00 |
|
Stephen Chung
|
b8da1691d3
|
Consolidate callbacks.
|
2020-06-02 13:33:16 +08:00 |
|
Stephen Chung
|
b8b12055b9
|
Disable if-expression when parsing expressions.
|
2020-06-01 13:26:20 +08:00 |
|
Stephen Chung
|
6d190096fd
|
Fix bug with bracket postfix when no_index.
|
2020-06-01 13:03:01 +08:00 |
|
Stephen Chung
|
cec6748ac6
|
Remove no_module gates to prepare for plugins.
|
2020-06-01 10:58:14 +08:00 |
|
Stephen Chung
|
d7d49a5196
|
Fix bug in chained dot/index expression.
|
2020-05-31 14:27:16 +08:00 |
|
Stephen Chung
|
4c46c7e26b
|
Register property versions of some methods.
|
2020-05-30 10:30:21 +08:00 |
|
Stephen Chung
|
2bcc51cc45
|
Fix bug in index expressions.
|
2020-05-30 10:27:48 +08:00 |
|
Stephen Chung
|
e1242df5c8
|
Extract copy/restore of first argument in method call.
|
2020-05-29 18:15:58 +08:00 |
|
Stephen Chung
|
9616452c00
|
Fix bug in calling script function in method style.
|
2020-05-29 00:53:30 +08:00 |
|
Stephen Chung
|
d7c69c4f51
|
More tests.
|
2020-05-28 14:08:21 +08:00 |
|
Stephen Chung
|
99ea2b33c9
|
Use immutable strings.
|
2020-05-25 13:44:28 +08:00 |
|
Stephen Chung
|
d56634cac7
|
Complete built-in operators.
|
2020-05-24 00:29:06 +08:00 |
|
Stephen Chung
|
e224550861
|
Move boxing of ParseError into ParseErrorType.
|
2020-05-22 18:28:13 +08:00 |
|
Stephen Chung
|
6b8c6bda42
|
Use u64 for operations counter.
|
2020-05-19 10:08:27 +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
|
0cb781c1aa
|
Avoid allocation in Target.
|
2020-05-16 11:42:56 +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
|
d613764c03
|
Test for private functions.
|
2020-05-13 13:49:01 +08:00 |
|
Stephen Chung
|
03c64688ad
|
Fix sync feature.
|
2020-05-12 16:32:22 +08:00 |
|
Stephen Chung
|
2e28967565
|
Fix bug with wrong method call hash.
|
2020-05-12 10:20:29 +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
|
80debbc432
|
Refactor.
|
2020-05-10 00:19:13 +08:00 |
|
Stephen Chung
|
0d20137d6c
|
Implement private modifier for functions.
|
2020-05-09 11:29:30 +08:00 |
|
Stephen Chung
|
d1de84fdd2
|
Add comments and fix documentation.
|
2020-05-09 10:00:59 +08:00 |
|
Stephen Chung
|
e50fcc385f
|
Pre-calculate index for module-qualified calls.
|
2020-05-08 22:38:56 +08:00 |
|
Stephen Chung
|
f3c0609377
|
Catch more assignment errors at parse time.
|
2020-05-07 12:25:09 +08:00 |
|
Stephen Chung
|
f1abd11571
|
Add docs and test on creating module from AST and file.
|
2020-05-06 23:00:26 +08:00 |
|
Stephen Chung
|
88fec57394
|
Make module_resolver optional and remove NullModuleResolver.
|
2020-05-06 16:09:44 +08:00 |
|
Stephen Chung
|
82e1af7acd
|
Implement module resolvers.
|
2020-05-05 23:57:25 +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
|
aae9e43109
|
Implement module-qualified functions.
|
2020-05-05 17:51:40 +08:00 |
|
Stephen Chung
|
38e717a838
|
Build Module type plus engine hooks.
|
2020-05-05 15:00:10 +08:00 |
|
Stephen Chung
|
143861747d
|
Rename sub-scope/SubScope to module.
|
2020-05-05 10:39:12 +08:00 |
|
Stephen Chung
|
64036f69ca
|
Refine modules.
|
2020-05-04 23:07:42 +08:00 |
|
Stephen Chung
|
798e1df298
|
Do not error when a property is read-only.
|
2020-05-04 18:06:09 +08:00 |
|
Stephen Chung
|
60b52c142e
|
Fix README example for on_print and on_debug.
|
2020-04-29 23:03:18 +08:00 |
|
Stephen Chung
|
304c658f89
|
Use scope offset for variable access.
|
2020-04-28 23:05:03 +08:00 |
|
Stephen Chung
|
6351c07bc6
|
Fix compiling for all features.
|
2020-04-28 19:39:28 +08:00 |
|
Stephen Chung
|
a306979a9c
|
Fix tests.
|
2020-04-23 14:00:29 +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
|
0306d15c04
|
Split core and standard libraries into packages.
|
2020-04-21 00:11:25 +08:00 |
|
Stephen Chung
|
5d9a99cefc
|
Refine postfix operators handling.
|
2020-04-17 19:00:52 +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
|
20bc66c5f6
|
Merge branch 'master' into enum-Dynamic
|
2020-04-13 21:34:20 +08:00 |
|
Stephen Chung
|
254522b268
|
Do not run test_string_substring if no_object.
|
2020-04-13 14:26:53 +08:00 |
|
Stephen Chung
|
2e9a5f7a89
|
Add sub_string, crop and index_of to String.
|
2020-04-13 12:29:22 +08:00 |
|
Stephen Chung
|
5152a40e93
|
Change Dynamic to enum.
|
2020-04-12 23:00:06 +08:00 |
|
Stephen Chung
|
5848339d5a
|
Add timestamp support.
|
2020-04-11 16:06:57 +08:00 |
|
Stephen Chung
|
d73cfb6da5
|
Allow escaping quotes in strings.
|
2020-04-11 12:46:10 +08:00 |
|
Stephen Chung
|
c1b16b1a35
|
Add remove/insert to arrays and maps.
|
2020-04-10 21:59:29 +08:00 |
|
Stephen Chung
|
ff8eca8a5e
|
Add parse_json.
|
2020-04-10 17:14:07 +08:00 |
|
Stephen Chung
|
5d611d1674
|
Add docs on JSON parsing.
|
2020-04-10 15:18:26 +08:00 |
|
Stephen Chung
|
3609150dcf
|
Bump version to 0.12.0.
|
2020-04-09 18:45:49 +08:00 |
|
Stephen Chung
|
34ef2d6e00
|
Rename AnonymousFn to Func
|
2020-04-09 10:38:33 +08:00 |
|
Stephen Chung
|
518725e119
|
Add support for anonymous functions in Rust.
|
2020-04-08 23:01:48 +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
|
b74c85f04c
|
Fix max call depth and add test.
|
2020-04-07 23:13:47 +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
|
e204ae1a2c
|
Add 'in' expression.
|
2020-04-06 17:47:34 +08:00 |
|
Stephen Chung
|
c4498d147d
|
Add set_value to Scope.
|
2020-04-05 19:17:48 +08:00 |
|
Stephen Chung
|
94313ca095
|
Test variable mutation in outer scope.
|
2020-04-05 12:57:20 +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
|
12a379dd57
|
Add stepped range function and keys/values for maps.
|
2020-04-04 12:20:24 +08:00 |
|
Stephen Chung
|
0873bdc152
|
Add sync feature to make Dynamic, Scope and AST Send + Sync .
|
2020-04-02 19:40:02 +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
|
c4a51b1390
|
Add append/mixin functions for arrays and maps.
|
2020-04-01 22:56:54 +08:00 |
|
Stephen Chung
|
4ea2fb88ae
|
Add continue statement.
|
2020-04-01 16:22:18 +08:00 |
|
Stephen Chung
|
dcf5eaf64d
|
Add to_string to prepare for string interpolation.
|
2020-03-31 10:00:17 +08:00 |
|
Stephen Chung
|
01c0b51017
|
Change object maps to #{ ... }
|
2020-03-30 17:40:26 +08:00 |
|
Stephen Chung
|
ee18f047b4
|
Fix test.
|
2020-03-30 16:18:33 +08:00 |
|
Stephen Chung
|
0a8b324fec
|
Merge branch 'object_maps'
|
2020-03-30 16:13:12 +08:00 |
|
Stephen Chung
|
273fc59a30
|
Refine tests.
|
2020-03-30 16:10:40 +08:00 |
|
Stephen Chung
|
fce51758d1
|
Add support for string literal property names in object maps.
|
2020-03-30 12:14:59 +08:00 |
|
Stephen Chung
|
45ee51874f
|
Add object maps.
|
2020-03-29 23:53:35 +08:00 |
|
Stephen Chung
|
ef6c6ea6d2
|
Add no_object feature to disable objects.
|
2020-03-29 17:15:12 +08:00 |
|
Stephen Chung
|
a8a4ed2967
|
Merge all MissingXXX errors into MissingToken.
|
2020-03-29 13:44:27 +08:00 |
|
Stephen Chung
|
ef6dd9414a
|
Allow if expressions.
|
2020-03-27 23:47:23 +08:00 |
|
Stephen Chung
|
796690f506
|
Detect duplicated parameters in function definitions.
|
2020-03-27 16:46:08 +08:00 |
|
Stephen Chung
|
b603a85bca
|
Add expression eval test.
|
2020-03-25 11:50:58 +08:00 |
|
Stephen Chung
|
d21f66b911
|
Fixing lint warnings
|
2020-03-24 16:57:35 +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
|
083b3147be
|
Fix test_eval.
|
2020-03-21 00:23:13 +08:00 |
|
Stephen Chung
|
ed996e71d6
|
Enable dot operations on constant variables.
|
2020-03-20 19:27:02 +08:00 |
|
Stephen Chung
|
36b7124dd5
|
Add eval test.
|
2020-03-19 20:55:53 +08:00 |
|
Stephen Chung
|
cc8ec12691
|
Add more comments and examples.
|
2020-03-19 13:52:10 +08:00 |
|
Stephen Chung
|
8efe080412
|
Handle break and return better.
|
2020-03-18 10:42:27 +08:00 |
|
Stephen Chung
|
f3213b945d
|
Fix power_of test.
|
2020-03-16 13:08:53 +08:00 |
|
Stephen Chung
|
6d33a91d09
|
Fix minor floating-point digit error.
|
2020-03-16 12:40:55 +08:00 |
|
Stephen Chung
|
372321dfe3
|
Add full optimization level for aggressive optimizing.
|
2020-03-15 22:39:58 +08:00 |
|
Stephen Chung
|
6e076c409d
|
Use matches! in examples.
|
2020-03-14 23:40:30 +08:00 |
|
Stephen Chung
|
dd36f3387a
|
Fixup code to make sure all feature builds succeed.
|
2020-03-14 20:06:40 +08:00 |
|
Stephen Chung
|
26bdc8ba08
|
FIX - fixes panic when constant array is assigned to. Refine README section on constants.
|
2020-03-14 19:46:44 +08:00 |
|
Stephen Chung
|
9844ae8665
|
Add constants.
|
2020-03-13 18:12:41 +08:00 |
|
Stephen Chung
|
560da5fdc6
|
Allow call_fn with only one parameter; consume can retain functions, eval cannot.
|
2020-03-12 14:54:14 +08:00 |
|
Stephen Chung
|
e24d3a7ade
|
Allow overloading of script functions.
|
2020-03-12 13:02:13 +08:00 |
|
Stephen Chung
|
4662b9bd0c
|
Fine tune some tests.
|
2020-03-12 12:35:30 +08:00 |
|
Stephen Chung
|
7c4d22d98a
|
Add no_function feature to disable script-defined functions.
|
2020-03-11 13:28:12 +08:00 |
|
Stephen Chung
|
880bce1114
|
General cleanup.
|
2020-03-11 11:03:18 +08:00 |
|
Stephen Chung
|
708c285a0a
|
Add only_i32 and only_i64 features.
|
2020-03-10 23:06:20 +08:00 |
|
Stephen Chung
|
e22aaca5c1
|
Make sure all tests run with all features.
|
2020-03-10 19:48:47 +08:00 |
|
Stephen Chung
|
f3bcb2a10d
|
Simplify call_fn API, no need to pass &mut references.
|
2020-03-10 14:09:05 +08:00 |
|
Stephen Chung
|
bae9946291
|
Allow engine to retain functions across runs.
|
2020-03-10 09:30:12 +08:00 |
|
Stephen Chung
|
5b5fd162be
|
Use ? operator in tests.
|
2020-03-09 21:09:53 +08:00 |
|
Stephen Chung
|
01d04f717b
|
Natively handle negative numbers in tokenizer instead of the neg() function.
|
2020-03-09 10:10:19 +08:00 |
|
Stephen Chung
|
c5b40783ef
|
Add unchecked feature to remove arithmetic operations checking.
|
2020-03-08 23:14:18 +08:00 |
|
Stephen Chung
|
b1b25d3043
|
Add fallible functions support and replace most arithmetic operations with checked versions.
|
2020-03-08 22:47:13 +08:00 |
|
Stephen Chung
|
024133ae2d
|
Avoid string copying.
|
2020-03-07 10:15:42 +08:00 |
|
Stephen Chung
|
ea82ee81d6
|
Fix call_fn to take &ast instead of ast.
|
2020-03-07 00:29:45 +08:00 |
|
Stephen Chung
|
bb56a7a843
|
Code refactor, bug fixes, code docs.
|
2020-03-04 22:00:01 +08:00 |
|
Stephen Chung
|
71a3c79915
|
Fix number parsing.
|
2020-03-03 21:39:25 +08:00 |
|
Stephen Chung
|
9f80bf03c4
|
Add throw.
|
2020-03-03 18:15:20 +08:00 |
|
Stephen Chung
|
e2cb111e4b
|
Add type_of function.
|
2020-03-03 17:28:38 +08:00 |
|
Stephen Chung
|
a1591ae45b
|
Better API for Scope.
|
2020-03-03 15:20:20 +08:00 |
|
Stephen Chung
|
366188234b
|
Pretty-print common type names.
|
2020-03-02 23:16:19 +08:00 |
|
Stephen Chung
|
0707fad1ca
|
Refactor tests.
|
2020-03-02 22:11:56 +08:00 |
|
Stephen Chung
|
ed8d2ac20f
|
Add else if control flow.
|
2020-03-02 17:04:56 +08:00 |
|
Stephen Chung
|
a5e09295f8
|
Allow comparisons between different types (returning false).
|
2020-03-02 14:28:42 +08:00 |
|
Stephen Chung
|
22a505b57b
|
Short-curcuit boolean operators.
|
2020-03-02 12:08:03 +08:00 |
|