Stephen Chung
|
f8e9d66a0b
|
Remove lifetime from Engine.
|
2020-04-16 23:31:48 +08:00 |
|
Stephen Chung
|
4f2350734f
|
Avoid copying indexed value if not necessary.
|
2020-04-16 12:08:28 +08:00 |
|
Stephen Chung
|
1ace4b474c
|
Favor matching on Union's instead of downcast::<T>, as_xxx() or is::<T>.
|
2020-04-16 10:24:30 +08:00 |
|
Stephen Chung
|
c799a4567a
|
Remove IndexSourceType.
|
2020-04-16 00:05:07 +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
|
78cd53db09
|
Streamline tokens reading and reformat code for easier reading.
|
2020-04-15 21:41:28 +08:00 |
|
Stephen Chung
|
f600e59401
|
Fix bug with casting from float.
|
2020-04-13 23:31:05 +08:00 |
|
Stephen Chung
|
20bc66c5f6
|
Merge branch 'master' into enum-Dynamic
|
2020-04-13 21:34:20 +08:00 |
|
Stephen Chung
|
2e9a5f7a89
|
Add sub_string, crop and index_of to String.
|
2020-04-13 12:29:22 +08:00 |
|
Stephen Chung
|
5796e520ec
|
Support Dynamic return values.
|
2020-04-13 10:27:08 +08:00 |
|
Stephen Chung
|
adaf086e90
|
Add i128, u128 and make timestamp functions safe.
|
2020-04-13 09:49:12 +08:00 |
|
Stephen Chung
|
5152a40e93
|
Change Dynamic to enum.
|
2020-04-12 23:00:06 +08:00 |
|
Stephen Chung
|
bc0d43d68f
|
Simplify code.
|
2020-04-11 18:09:03 +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
|
81894e52cb
|
Do not optimize single-use AST's.
|
2020-04-10 21:02:38 +08:00 |
|
Stephen Chung
|
4b2cff715e
|
Optimize property access for object maps.
|
2020-04-10 21:02:13 +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
|
adbfceb5be
|
Do not omit error enum variants.
|
2020-04-10 12:16:39 +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
|
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
|
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
|
32672b184b
|
Avoid copying strings.
|
2020-04-06 12:29:01 +08:00 |
|
Stephen Chung
|
2bb195cd65
|
Add doc tests to Scope.
|
2020-04-05 23:43:40 +08:00 |
|
Stephen Chung
|
c4498d147d
|
Add set_value to Scope.
|
2020-04-05 19:17:48 +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
|
ae9a975576
|
Make downcast_ref, downcast_mut and is<T> public.
|
2020-04-05 09:56:52 +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
|
12a379dd57
|
Add stepped range function and keys/values for maps.
|
2020-04-04 12:20:24 +08:00 |
|
Stephen Chung
|
92b549b828
|
Add features info in docs.
|
2020-04-03 19:42:01 +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
|
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
|
246a865abd
|
Fix doc test.
|
2020-04-01 10:21:49 +08:00 |
|
Stephen Chung
|
d7ac57c060
|
Minor code cleanup.
|
2020-04-01 09:51:33 +08:00 |
|
Stephen Chung
|
dcf5eaf64d
|
Add to_string to prepare for string interpolation.
|
2020-03-31 10:00:17 +08:00 |
|
Stephen Chung
|
c17dc34f86
|
Refine code.
|
2020-03-30 22:19:37 +08:00 |
|
Stephen Chung
|
01c0b51017
|
Change object maps to #{ ... }
|
2020-03-30 17:40:26 +08:00 |
|
Stephen Chung
|
0a8b324fec
|
Merge branch 'object_maps'
|
2020-03-30 16:13:12 +08:00 |
|
Stephen Chung
|
9f3113b11c
|
Encapsulate getters/setters.
|
2020-03-30 16:10:50 +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
|
a541a4507f
|
Remove internal function.
|
2020-03-27 16:46:19 +08:00 |
|
Stephen Chung
|
796690f506
|
Detect duplicated parameters in function definitions.
|
2020-03-27 16:46:08 +08:00 |
|
Stephen Chung
|
337a96394f
|
Limit function calls depth.
|
2020-03-27 14:34:01 +08:00 |
|
Stephen Chung
|
cc8554d095
|
Add merge/+ to AST.
|
2020-03-27 11:50:24 +08:00 |
|
Stephen Chung
|
56df5c49c8
|
Encapsulate FunctionsLib to hold script-defined functions.
|
2020-03-26 20:26:05 +08:00 |
|
Stephen Chung
|
8679982b4b
|
Use references for function call args.
|
2020-03-26 10:56:28 +08:00 |
|
Stephen Chung
|
ea4d3fa6b8
|
Avoid I and O as generic parameters.
|
2020-03-26 10:56:18 +08:00 |
|
Stephen Chung
|
6308e54119
|
Simplify.
|
2020-03-26 10:55:50 +08:00 |
|
Stephen Chung
|
a5a161ec88
|
Format getter/setter function name using constants.
|
2020-03-26 10:55:33 +08:00 |
|
Stephen Chung
|
2bb2e871ab
|
Remove regnster_fn support for first argument of &type (not used).
|
2020-03-25 17:21:58 +08:00 |
|
Stephen Chung
|
5aea997672
|
Refine Scope API.
|
2020-03-25 11:27:18 +08:00 |
|
Stephen Chung
|
3bc02a99ad
|
Format comments.
|
2020-03-25 11:27:09 +08:00 |
|
Stephen Chung
|
599b81ad8a
|
Remove ScopeEntry and VariableType from public.
|
2020-03-25 11:24:29 +08:00 |
|
Stephen Chung
|
180c4dee08
|
Document macros.
|
2020-03-25 11:24:06 +08:00 |
|
Stephen Chung
|
d21f66b911
|
Fixing lint warnings
|
2020-03-24 16:57:35 +08:00 |
|
Stephen Chung
|
3ea482567f
|
Simplify code style.
|
2020-03-24 16:46:47 +08:00 |
|
Stephen Chung
|
156ebd7ea4
|
Avoid copying tokens.
|
2020-03-24 11:21:20 +08:00 |
|
Stephen Chung
|
7b06715299
|
FIX - Errors in no_std.
|
2020-03-24 11:21:09 +08:00 |
|
Stephen Chung
|
3677bd3651
|
Make Token smaller by boxing LexError.
|
2020-03-24 09:49:37 +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
|
1d98f65342
|
Disallow statement expressions in if and while guards to reduce code confusion.
|
2020-03-20 19:50:58 +08:00 |
|
Stephen Chung
|
ed996e71d6
|
Enable dot operations on constant variables.
|
2020-03-20 19:27:02 +08:00 |
|
Stephen Chung
|
283602cdd8
|
Do not call function when optimizing if there is a script-defined function overridding it.
|
2020-03-19 22:29:02 +08:00 |
|
Stephen Chung
|
702b2010f2
|
Add contains to Scope.
|
2020-03-19 20:55:49 +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
|
b3efb8b264
|
Disallow variable names starting with _ + digit.
|
2020-03-18 23:09:53 +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
|
ecded729ad
|
Finalize no_std support.
|
2020-03-18 10:50:51 +08:00 |
|
Stephen Chung
|
ca20faf170
|
Add code comments.
|
2020-03-18 10:43:59 +08:00 |
|
Stephen Chung
|
8efe080412
|
Handle break and return better.
|
2020-03-18 10:42:27 +08:00 |
|
Stephen Chung
|
d2951bfb6b
|
Make sure return is not an error.
|
2020-03-18 10:40:07 +08:00 |
|
Stephen Chung
|
b26ca753c2
|
Mandatory semiclolons separating statements.
|
2020-03-18 10:40:07 +08:00 |
|
Stephen Chung
|
c3d4a1b5e9
|
Optimize type_of.
|
2020-03-18 10:40:07 +08:00 |
|
Stephen Chung
|
abe5365bfd
|
Improve error messages to lists.
|
2020-03-18 10:40:07 +08:00 |
|
Stephen Chung
|
ef8d428f42
|
Add code comments.
|
2020-03-18 10:36:50 +08:00 |
|
Trangar
|
c8a9df0a0a
|
Added no_std support
|
2020-03-17 19:26:11 +01:00 |
|