Stephen Chung
|
a00d6ba99e
|
Optimize IndexChainValue usage.
|
2020-11-19 13:51:59 +08:00 |
|
Stephen Chung
|
a8cdb661f8
|
Optimize Imports.
|
2020-11-19 10:14:43 +08:00 |
|
Stephen Chung
|
038e3c2554
|
Add FnNamespace for module functions.
|
2020-11-17 12:23:53 +08:00 |
|
Stephen Chung
|
999a87f86e
|
Fix no_optimize build.
|
2020-11-16 23:32:44 +08:00 |
|
Stephen Chung
|
272c8505b8
|
Refactor use.
|
2020-11-16 23:10:14 +08:00 |
|
Stephen Chung
|
d50d48f26f
|
Move definition of Array and Map to lib.rs.
|
2020-11-16 21:14:32 +08:00 |
|
Stephen Chung
|
adb902326e
|
Reduce feature gates on imports.
|
2020-11-16 16:28:04 +08:00 |
|
Stephen Chung
|
ef02150afd
|
Expose methods for Engine::register_module.
|
2020-11-16 14:07:48 +08:00 |
|
Stephen Chung
|
937b45a187
|
Add Engine::load_module.
|
2020-11-15 23:14:16 +08:00 |
|
Stephen Chung
|
c919ee4e46
|
Fine tune hash map sizes.
|
2020-11-15 13:49:54 +08:00 |
|
Stephen Chung
|
bde8917ed4
|
Set capacity of hash maps.
|
2020-11-15 12:07:35 +08:00 |
|
Stephen Chung
|
a63f14b59c
|
Expr::Switch -> Stmt::Switch.
|
2020-11-14 23:43:36 +08:00 |
|
Stephen Chung
|
0182117759
|
Change Stmt Variant names.
|
2020-11-14 22:55:23 +08:00 |
|
Stephen Chung
|
28de155f08
|
Add Expr::DynamicConstant.
|
2020-11-14 19:04:49 +08:00 |
|
Stephen Chung
|
89254a04c4
|
Fix tests.
|
2020-11-14 17:22:01 +08:00 |
|
Stephen Chung
|
56fbe39b7b
|
Use references for switch expressions, if possible.
|
2020-11-14 16:08:48 +08:00 |
|
Stephen Chung
|
55b4907f19
|
Add switch expression.
|
2020-11-13 18:32:18 +08:00 |
|
Stephen Chung
|
7d1b971b39
|
More interned strings.
|
2020-11-13 10:43:54 +08:00 |
|
Stephen Chung
|
69a0f044f4
|
Use interned strings to prepare for match statement.
|
2020-11-12 22:36:13 +08:00 |
|
Stephen Chung
|
958762079e
|
Change modules to namespace.
|
2020-11-10 23:26:50 +08:00 |
|
Stephen Chung
|
c41f5aefcb
|
Change sub-modules to shared.
|
2020-11-09 22:44:20 +08:00 |
|
Stephen Chung
|
e69444293c
|
Encapsulate imported modules into AST.
|
2020-11-09 21:52:23 +08:00 |
|
Stephen Chung
|
821e64adc4
|
Allow multiple exports.
|
2020-11-09 14:38:33 +08:00 |
|
Stephen Chung
|
173f8474d6
|
Fix no_module build.
|
2020-11-09 12:50:18 +08:00 |
|
Stephen Chung
|
4b622a8830
|
Enable export let/export const short-hand.
|
2020-11-09 12:21:11 +08:00 |
|
Stephen Chung
|
48886eacc8
|
Add == and != to arrays and maps.
|
2020-11-08 23:00:37 +08:00 |
|
Stephen Chung
|
1e07e4356e
|
Re-index imported modules if they are not yet indexed.
|
2020-11-08 14:29:54 +08:00 |
|
Stephen Chung
|
b3d318ef7f
|
Module resolver returns shared module.
|
2020-11-07 23:33:21 +08:00 |
|
Stephen Chung
|
6bc5ba6668
|
Enable functions to use global imports.
|
2020-11-06 19:17:07 +08:00 |
|
Stephen Chung
|
07a8a43298
|
Optimize data structures.
|
2020-11-06 16:27:40 +08:00 |
|
Stephen Chung
|
2168fd5361
|
Expr::Stmt takes a statements block.
|
2020-11-04 11:49:02 +08:00 |
|
Stephen Chung
|
b9de8eaa7f
|
Minor code refactor.
|
2020-11-02 23:54:19 +08:00 |
|
Stephen Chung
|
d7d6f74dfd
|
Add constant NO_POS.
|
2020-11-02 12:50:27 +08:00 |
|
Stephen Chung
|
6f3ce96d9d
|
Enable termination token.
|
2020-11-02 11:04:45 +08:00 |
|
Stephen Chung
|
b07a2aa79c
|
Pack Imports.
|
2020-11-01 23:42:00 +08:00 |
|
Stephen Chung
|
c55fc5a9a5
|
Optimize Scope.
|
2020-11-01 22:46:46 +08:00 |
|
Stephen Chung
|
629e02f9da
|
Use Ident.
|
2020-11-01 00:04:02 +08:00 |
|
Stephen Chung
|
abbee80e5d
|
Do not box ModuleRef.
|
2020-10-31 23:51:59 +08:00 |
|
Stephen Chung
|
42eac410b7
|
Optimize Expr.
|
2020-10-31 23:26:21 +08:00 |
|
Stephen Chung
|
89811c8dfc
|
Pack Stmt and Expr some more.
|
2020-10-31 14:13:45 +08:00 |
|
Stephen Chung
|
a73584cd36
|
Fix no_std.
|
2020-10-29 12:00:02 +08:00 |
|
Stephen Chung
|
4e115d2bc2
|
Code structure refactor.
|
2020-10-29 11:37:51 +08:00 |
|
Stephen Chung
|
f5ffbfbe06
|
Code structure cleanup.
|
2020-10-28 22:18:44 +08:00 |
|
Stephen Chung
|
f56c3fe9cb
|
Add Ident/IdentX to AST.
|
2020-10-28 19:11:17 +08:00 |
|
Stephen Chung
|
427af14f1b
|
Don't wrap system errors from function calls.
|
2020-10-28 14:10:46 +08:00 |
|
Stephen Chung
|
30e11f137b
|
Move ErrorAssignmentToUnknownLHS to ParseError.
|
2020-10-28 10:26:36 +08:00 |
|
Stephen Chung
|
51fca1e757
|
Move Assignment to Stmt.
|
2020-10-27 23:21:20 +08:00 |
|
Stephen Chung
|
fd2ba54b49
|
Introduce BinaryExpr.
|
2020-10-27 23:00:05 +08:00 |
|
Stephen Chung
|
f62f7908ab
|
Pack Stmt tighter.
|
2020-10-27 19:23:43 +08:00 |
|
Stephen Chung
|
93b5df6b3c
|
Pack Stmt structure.
|
2020-10-27 18:18:19 +08:00 |
|
Stephen Chung
|
01663a6581
|
Refine docs.
|
2020-10-27 11:30:38 +08:00 |
|
Stephen Chung
|
b607a3a9ba
|
Add raw API for custom syntax.
|
2020-10-25 21:57:18 +08:00 |
|
Stephen Chung
|
2c7c719cd5
|
Minor cleanup before release.
|
2020-10-22 12:26:44 +08:00 |
|
Stephen Chung
|
3660e42b96
|
Refactor try/catch code.
|
2020-10-21 14:45:10 +08:00 |
|
Stephen Chung
|
ad60db5bae
|
Reduce max fn call level.
|
2020-10-21 10:10:46 +08:00 |
|
Stephen Chung
|
07bdb824fe
|
Add try-catch.
|
2020-10-20 23:16:03 +08:00 |
|
Stephen Chung
|
5ee9dfc5cd
|
1) Change namespaces to iter_namespaces
2) throw can throw any value
|
2020-10-20 18:09:26 +08:00 |
|
Stephen Chung
|
92ba7b42d5
|
Implement namespaces chain.
|
2020-10-20 10:54:32 +08:00 |
|
Stephen Chung
|
a9fd0ff4de
|
Encapsulate scope into EvalContext;
Fix bug with custom syntax delta.
|
2020-10-19 19:11:55 +08:00 |
|
Stephen Chung
|
d1f9f4096d
|
Update badges
|
2020-10-19 17:26:47 +08:00 |
|
Stephen Chung
|
c8c4ca21ad
|
Update docs.
|
2020-10-19 14:26:15 +08:00 |
|
Stephen Chung
|
6e5c903241
|
Fix no_module build.
|
2020-10-18 22:10:08 +08:00 |
|
Stephen Chung
|
46b92c9d1f
|
Allow NativeCallContext in function arguments.
|
2020-10-18 21:47:34 +08:00 |
|
Stephen Chung
|
82e6dd446a
|
Encapsulate register_fn_raw parameters into NativeCallContext.
|
2020-10-18 17:02:17 +08:00 |
|
Stephen Chung
|
7a4905209c
|
Introduce EvalAltResult::ErrorSystem.
|
2020-10-17 16:34:07 +08:00 |
|
Stephen Chung
|
39474d6420
|
Streamline function pointers and currying.
|
2020-10-17 13:49:16 +08:00 |
|
Stephen Chung
|
1e21a7f7e7
|
Introduce IndexChainValue.
|
2020-10-15 23:30:30 +08:00 |
|
Stephen Chung
|
707ece7e80
|
Refactor iterators API.
|
2020-10-14 23:22:10 +08:00 |
|
Stephen Chung
|
3c7805d514
|
Encapsulate environment in ScriptFnDef.
|
2020-10-13 09:38:14 +08:00 |
|
Stephen Chung
|
747fda1ec7
|
Add filter, map, reduce to Array.
|
2020-10-12 22:49:51 +08:00 |
|
Stephen Chung
|
21b989afd5
|
Refine function call parameters size.
|
2020-10-12 17:00:58 +08:00 |
|
Stephen Chung
|
e343bcfa8f
|
Change Option<usize> to usize for variable resolver index.
|
2020-10-11 22:41:26 +08:00 |
|
Stephen Chung
|
fd5a932611
|
Implement variable resolver.
|
2020-10-11 21:58:11 +08:00 |
|
Stephen Chung
|
612ecc4ebc
|
Move StaticVec definition to lib.rs.
|
2020-10-10 13:41:55 +08:00 |
|
Stephen Chung
|
630ec51624
|
Simplify let/const statement.
|
2020-10-09 13:25:53 +08:00 |
|
Stephen Chung
|
7ede299aae
|
Allow expressions in constants.
|
2020-10-09 11:15:25 +08:00 |
|
Stephen Chung
|
d511aac7a4
|
Reduce max call stack size for debug.
|
2020-10-08 23:00:01 +08:00 |
|
Stephen Chung
|
1272eeb81a
|
Add/remove #[inline] attributes.
|
2020-10-08 22:25:50 +08:00 |
|
Stephen Chung
|
ae1157a140
|
Remove Expr::get_constant_str and change Expr::get_constant_value not to panic.
|
2020-10-06 22:09:26 +08:00 |
|
Stephen Chung
|
82d48df734
|
Merge data type mismatch errors.
|
2020-10-05 13:45:57 +08:00 |
|
Stephen Chung
|
4356d02828
|
Fix no_object builds.
|
2020-10-05 12:05:46 +08:00 |
|
Stephen Chung
|
a962debf0d
|
Simplify target back propagation.
|
2020-10-04 10:40:44 +08:00 |
|
Stephen Chung
|
23d0f52284
|
Better error messages.
|
2020-10-03 23:27:30 +08:00 |
|
Stephen Chung
|
1e13e6be5f
|
Doc formatting.
|
2020-10-03 18:49:11 +08:00 |
|
Stephen Chung
|
fbfb7677c1
|
Add is_def_var and is_def_fn.
|
2020-10-03 16:25:58 +08:00 |
|
Stephen Chung
|
a72f70846f
|
Make merged namespace more efficient.
|
2020-10-02 23:14:33 +08:00 |
|
Stephen Chung
|
08ca90a136
|
Use ImmutableString for import alias.
|
2020-10-02 18:52:18 +08:00 |
|
Stephen Chung
|
03dce86328
|
Support Dynamic as function default return value.
|
2020-09-26 16:27:38 +08:00 |
|
Stephen Chung
|
594dcc3a06
|
Disallow registering indexers for arrays, maps and strings.
|
2020-09-22 17:57:56 +08:00 |
|
Stephen Chung
|
8095ebc9e4
|
Remove unused imports.
|
2020-09-21 18:00:46 +08:00 |
|
Stephen Chung
|
83f9df2852
|
Fix op-assignment overrides.
|
2020-09-21 16:15:52 +08:00 |
|
J Henry Waugh
|
c8dffff515
|
Fix clippy::perf lint errors
|
2020-09-20 13:07:46 -05:00 |
|
Stephen Chung
|
a49b58002a
|
Fix doc tests.
|
2020-09-20 15:55:11 +08:00 |
|
Stephen Chung
|
e2f271644a
|
Expand packages and raw Engine write-up.
|
2020-08-23 17:22:39 +08:00 |
|
Stephen Chung
|
196e145c96
|
Derive standard traits for Limits.
|
2020-08-23 16:29:32 +08:00 |
|
Stephen Chung
|
5a1a141ce3
|
Improve shared value treatment.
|
2020-08-08 16:24:10 +08:00 |
|
Stephen Chung
|
2f395492de
|
Simply error code.
|
2020-08-06 10:17:32 +08:00 |
|
Stephen Chung
|
ffe52bf437
|
Allow omitting the alias in import statement.
|
2020-08-05 23:23:53 +08:00 |
|
Stephen Chung
|
3b6d35368f
|
Handle shared for loop variable.
|
2020-08-03 23:11:38 +08:00 |
|
Stephen Chung
|
dddd8133df
|
Set unshared value in let/const statement.
|
2020-08-03 12:38:56 +08:00 |
|
Stephen Chung
|
4079164bfd
|
Implement closures.
|
2020-08-03 12:10:20 +08:00 |
|
Stephen Chung
|
b86c87253b
|
Prevent data races.
|
2020-08-02 13:33:51 +08:00 |
|
Stephen Chung
|
1daf91df30
|
Avoid storing shared value inside shared value.
|
2020-08-01 22:28:17 +08:00 |
|
Stephen Chung
|
af2f8acb5d
|
Refine indexer set.
|
2020-08-01 12:21:15 +08:00 |
|
Stephen Chung
|
5873bccd50
|
Fix no_index and no_object.
|
2020-07-31 23:37:30 +08:00 |
|
Stephen Chung
|
60891e694f
|
Streamline code and feature gates.
|
2020-07-31 22:30:23 +08:00 |
|
Stephen Chung
|
8d0623d07f
|
Add is_shared function.
|
2020-07-31 18:43:34 +08:00 |
|
Stephen Chung
|
0295e109ad
|
Fix features
|
2020-07-31 18:06:01 +08:00 |
|
Stephen Chung
|
d563b878aa
|
Fix no_std builds.
|
2020-07-31 17:26:49 +08:00 |
|
Stephen Chung
|
e70e0ff4e2
|
Fixup.
|
2020-07-31 16:39:38 +08:00 |
|
Stephen Chung
|
871fcb38be
|
Minor style changes and make sure no_shared works on all.
|
2020-07-31 16:03:08 +08:00 |
|
Ilya Lakhin
|
89f75bbf0c
|
Merge remote-tracking branch 'schungx/closures' into closures
|
2020-07-31 13:05:16 +07:00 |
|
Ilya Lakhin
|
ca64668e58
|
take() keyword; shared test with registered functions with callbacks
|
2020-07-31 11:41:22 +07:00 |
|
Stephen Chung
|
cb005506e2
|
Simplify function calling.
|
2020-07-31 12:11:16 +08:00 |
|
Ilya Lakhin
|
aa87a7f5ef
|
Fixes in Engine to properly interpret Shared Dynamic
|
2020-07-31 10:47:22 +07:00 |
|
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
|
7d4620d0d9
|
Unbounded -> unbound.
|
2020-07-30 23:29:11 +08:00 |
|
Stephen Chung
|
98b294c699
|
Implement capturing.
|
2020-07-30 18:18:28 +08:00 |
|
Stephen Chung
|
e505a06839
|
Add comparison operators to ImmutableString.
|
2020-07-30 13:28:25 +08:00 |
|
Stephen Chung
|
afbcd0fc0b
|
Replace StaticVec with SmallVec.
|
2020-07-29 16:10:06 +08:00 |
|
Stephen Chung
|
b63ff56e09
|
Make sure we keep the starting position of each statement (for future uses).
|
2020-07-28 10:26:20 +08:00 |
|
Stephen Chung
|
057f6435a4
|
Add public_only parameter to module function methods.
|
2020-07-27 18:10:45 +08:00 |
|
Stephen Chung
|
a3a167424b
|
Allow Rust functions in FnPtr::call_dynamic.
|
2020-07-27 12:52:32 +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
|
c825de6f77
|
Mark internal data structures with [INTERNALS].
|
2020-07-25 16:05:08 +08:00 |
|
Stephen Chung
|
6a96be3382
|
Merge branch 'master' of https://github.com/jonathandturner/rhai
|
2020-07-25 15:58:37 +08:00 |
|
Stephen Chung
|
284e58e8a1
|
Improve documentation on internal types.
|
2020-07-25 15:52:27 +08:00 |
|
John-John Tedro
|
d920613d57
|
Avoid shadowing call errors in get_indexed_mut
|
2020-07-25 08:13:11 +02:00 |
|
Stephen Chung
|
463d669ab5
|
Avoid shadowing indexer errors.
|
2020-07-25 09:55:33 +08:00 |
|
Stephen Chung
|
2b0aacde23
|
Fix Module::set_indexer_set_fn.
|
2020-07-24 23:16:54 +08:00 |
|
Stephen Chung
|
bff266d4e1
|
Move function calling to separate source file.
|
2020-07-23 18:40:42 +08:00 |
|
Stephen Chung
|
b913b521dc
|
Improve currying.
|
2020-07-23 10:12:51 +08:00 |
|
Stephen Chung
|
6d551f1596
|
Add currying support.
|
2020-07-22 23:12:09 +08:00 |
|
Stephen Chung
|
abf66850f6
|
Enable custom syntax without internals.
|
2020-07-22 17:05:13 +08:00 |
|
Stephen Chung
|
35374f5b3b
|
Simplify custom syntax.
|
2020-07-22 13:08:51 +08:00 |
|
Stephen Chung
|
61a1355c59
|
Add no-std example.
|
2020-07-21 22:32:24 +08:00 |
|
Stephen Chung
|
e6c3f8134d
|
Avoid copying property name for map property access.
|
2020-07-21 20:59:12 +08:00 |
|
Stephen Chung
|
e8b6d0143d
|
Small fixups.
|
2020-07-20 23:23:12 +08:00 |
|
Stephen Chung
|
cf36dc5a57
|
Support for anonymous functions.
|
2020-07-19 17:14:55 +08:00 |
|
Stephen Chung
|
d119e13b79
|
Allow binding of this pointer in FnPtr calls.
|
2020-07-17 10:18:07 +08:00 |
|
Stephen Chung
|
16fbfbb606
|
Enable call in function-call style.
|
2020-07-16 12:09:31 +08:00 |
|
Stephen Chung
|
adc96e24bd
|
Fix all features.
|
2020-07-13 19:38:50 +08:00 |
|
Stephen Chung
|
e8d78bdfde
|
Add support for String in function parameters.
|
2020-07-13 13:40:51 +08:00 |
|
Stephen Chung
|
2a8d63fd5f
|
Refine custom syntax.
|
2020-07-11 15:09:17 +08:00 |
|
Stephen Chung
|
ebffbf0f98
|
Refine docs and add custom syntax.
|
2020-07-10 22:01:47 +08:00 |
|
Stephen Chung
|
f36b4a69ae
|
FIXED - method calls inside dot chain.
|
2020-07-09 22:21:07 +08:00 |
|
Stephen Chung
|
99164ebceb
|
Add custom syntax.
|
2020-07-09 19:54:28 +08:00 |
|
Stephen Chung
|
703cc414b8
|
Allow mutating a module-qualified function's first argument if it is a variable.
|
2020-07-08 13:06:00 +08:00 |
|
Stephen Chung
|
d0711394f0
|
Expose FnPtr and move name checking into
|
2020-07-06 21:30:35 +08:00 |
|