Commit Graph

227 Commits

Author SHA1 Message Date
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
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
f2b6d58122 Bump version. 2020-10-20 09:21:36 +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
c8c4ca21ad Update docs. 2020-10-19 14:26:15 +08:00
Stephen Chung
25f820f5bf Reimplement pad for string. 2020-10-18 22:36:58 +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
58c820785b Add drain and retain for arrays. 2020-10-18 13:18:12 +08:00
Stephen Chung
39474d6420 Streamline function pointers and currying. 2020-10-17 13:49:16 +08:00
Stephen Chung
6f134368c3 Bump version. 2020-10-16 21:19:24 +08:00
Stephen Chung
e62df6cbed Remove none for array. 2020-10-16 21:02:16 +08:00
Stephen Chung
849aec0621 Set version to 0.19.1. 2020-10-16 17:32:26 +08:00
Stephen Chung
fb05e811b7 Map::keys and Map::values can be used method-call style. 2020-10-15 22:11:40 +08:00
Stephen Chung
ea9ef1091a Add example to function pointer. 2020-10-15 20:05:23 +08:00
Stephen Chung
e0c39edff4 Enhance array functions. 2020-10-14 21:27:31 +08:00
Stephen Chung
13c4d0bbb3 Adjust precedence of in. 2020-10-13 16:01:42 +08:00
Stephen Chung
9dceeaf114 Reserve ** operator. 2020-10-13 15:51:59 +08:00
Stephen Chung
037e8334d4 Reset modulo precedence. 2020-10-13 15:49:09 +08:00
Stephen Chung
6db412815b Add chop and extract for arrays. 2020-10-13 14:39:49 +08:00
Stephen Chung
1c86c66f1a Add more functions to arrays. 2020-10-13 10:57:29 +08:00
Stephen Chung
0b4129fb98 Raise precedence of ~ and %. 2020-10-13 09:33:16 +08:00
Stephen Chung
e6667a3996 Revise docs. 2020-10-12 23:17:22 +08:00
Stephen Chung
747fda1ec7 Add filter, map, reduce to Array. 2020-10-12 22:49:51 +08:00
Stephen Chung
c4f00afbee Disallow ! in module function calls. 2020-10-12 16:59:59 +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
9d93dac8e7 Reserve some more symbols. 2020-10-10 22:14:10 +08:00
Stephen Chung
994e5a4251 Move some concat functions to builtin. 2020-10-10 22:13:55 +08:00
Stephen Chung
dd9f58f323 Merge ser/de modules. 2020-10-10 13:43:14 +08:00
Stephen Chung
b23966e16b Clarify no capturing for constants. 2020-10-09 13:36:48 +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
1523981e4e Add AST::combine and AST::combine_filtered. 2020-10-07 12:11:25 +08:00
Stephen Chung
df1dd5190e Add usage pattern on multi-layer functions. 2020-10-07 10:43:53 +08:00
Stephen Chung
762072685d Move script optimization into separate section. 2020-10-06 22:35:27 +08:00
Stephen Chung
1de44c7ecd Reserve $ symbol. 2020-10-05 23:02:50 +08:00
Stephen Chung
0d0affd5e9 Eagerly evaluate built-in operators for OptimizationLevel::Simple. 2020-10-05 10:27:31 +08:00
Stephen Chung
b91a073596 Add events handler pattern. 2020-10-04 23:05:33 +08:00
Stephen Chung
d802829156 Bump version. 2020-10-03 23:29:34 +08:00
Stephen Chung
fbfb7677c1 Add is_def_var and is_def_fn. 2020-10-03 16:25:58 +08:00
Stephen Chung
eec3f4e1bf Module:;eval_ast_as_new defaults to merging namespaces. 2020-10-03 11:42:54 +08:00
Stephen Chung
d2c94ba07c Add more module tests. 2020-10-02 14:55:02 +08:00
Stephen Chung
a13fcc5cc2 Refine plugin module docs. 2020-10-01 16:47:02 +08:00
Stephen Chung
07fdd1bef1 Fix image url link. 2020-10-01 00:11:45 +08:00
Stephen Chung
cbc3d8764a Revise docs for 0.19.0. 2020-09-30 23:02:01 +08:00
Stephen Chung
c7dfbd48a6 Restore call_fn_dynamic. 2020-09-29 18:37:00 +08:00
Stephen Chung
64c421b3d7 Revise docs. 2020-09-28 22:14:19 +08:00
Stephen Chung
726b030616 Implement +/- operators for timestamp. 2020-09-26 19:45:33 +08:00
Stephen Chung
03dce86328 Support Dynamic as function default return value. 2020-09-26 16:27:38 +08:00
Stephen Chung
4efe6b90e7 Add string::split(). 2020-09-25 23:02:49 +08:00
Stephen Chung
599fe846cb Add complete_namespace to Module::eval_ast_as_new. 2020-09-25 18:07:39 +08:00
Stephen Chung
e637bfa51d Change pure to independent. 2020-09-25 09:39:18 +08:00
Stephen Chung
c4ec93080e New FileModuleResolver. 2020-09-24 22:50:28 +08:00
Stephen Chung
12e9a8567d Make tables casing consistent. 2020-09-24 11:17:39 +08:00
Stephen Chung
9fcbda1ba4 Add reverse function to arrays. 2020-09-24 10:51:21 +08:00
Stephen Chung
ed38b50490 Add parse_int and parse_float. 2020-09-23 12:00:03 +08:00
Stephen Chung
594dcc3a06 Disallow registering indexers for arrays, maps and strings. 2020-09-22 17:57:56 +08:00
Stephen Chung
283495a02f Setters should have no return value. 2020-09-22 12:14:26 +08:00
Stephen Chung
83f9df2852 Fix op-assignment overrides. 2020-09-21 16:15:52 +08:00
Stephen Chung
c7a675e18a Fix no_object builds. 2020-09-20 14:52:38 +08:00
Stephen Chung
3341f40fd2 Refine docs. 2020-09-20 10:50:58 +08:00
Stephen Chung
2ff3a1fde5 Refine docs. 2020-09-19 12:14:02 +08:00
Stephen Chung
b795ce9f45 Refine docs. 2020-09-18 11:52:23 +08:00
Stephen Chung
1060ff35fd Fix tests. 2020-09-16 21:53:22 -05:00
Stephen Chung
7ceb624ec1 Add combine_with_exported_module. 2020-09-16 21:53:22 -05:00
Stephen Chung
654da2db8a Fix tests. 2020-09-16 21:53:22 -05:00
Stephen Chung
848bdf3f01 Add combine_with_exported_module. 2020-09-16 21:50:44 -05:00
Stephen Chung
c7de72aba2 Clarify private module functions/variables. 2020-09-10 17:42:53 +08:00
Stephen Chung
939f4413de Add multiple registrations of plugin function names. 2020-09-10 12:10:49 +08:00
Stephen Chung
ae953315fe Refine plugins doc. 2020-09-04 15:42:31 +08:00
J Henry Waugh
c5b2debf4a Book updates for Plugins 2020-08-31 19:03:45 -05:00
Stephen Chung
f4e4958973 Fix typos. 2020-08-31 12:03:30 +08:00
Stephen Chung
ef9b90c3ef Add entry on plugins. 2020-08-31 11:23:11 +08:00
Stephen Chung
4d9aad816c Add writeup on plugins. 2020-08-30 23:13:47 +08:00
Stephen Chung
b72a6355fd Fix docs on sign result. 2020-08-30 17:28:53 +08:00
Stephen Chung
9ba7a1245d Restructure book chapters. 2020-08-30 17:27:42 +08:00
Stephen Chung
cd867b180f Restructure book chapters. 2020-08-30 17:25:36 +08:00
Stephen Chung
a72f797da1 Merge branch 'plugins' into plugins_dev 2020-08-23 17:54:37 +08:00
Stephen Chung
e2f271644a Expand packages and raw Engine write-up. 2020-08-23 17:22:39 +08:00
Stephen Chung
d134b72473 Add link from parse_json to serde. 2020-08-23 14:50:53 +08:00
Stephen Chung
c6a3397b29 Remove dependency on num-traits. 2020-08-23 11:16:08 +08:00
Stephen Chung
0b04d05afe Do not parse closures when allow_anonymous_fn is false. 2020-08-22 11:08:27 +08:00
Stephen Chung
6a3e123306 Use split_first_mut instead of split_at_mut. 2020-08-18 23:19:26 +08:00
Stephen Chung
c5360db185 Handle #{ in Engine::parse_json, restrict to object hashes only. 2020-08-18 23:07:17 +08:00
Stephen Chung
111f5931b3 Add multiple instantiation. 2020-08-18 23:06:48 +08:00
Stephen Chung
f9807a3c1e Remove content on avoiding &mut ImmutableString which is invalid. 2020-08-15 00:10:14 +08:00
Stephen Chung
a5b4d61dff Fix docs. 2020-08-11 13:46:09 +08:00
Stephen Chung
2d4b85f67d Add cusotm syntax. 2020-08-10 12:03:22 +08:00
Stephen Chung
c86a979601 Refine docs. 2020-08-07 18:40:31 +08:00
Stephen Chung
0b21d80641 Add patterns section. 2020-08-07 11:44:15 +08:00
Stephen Chung
b8b1efd241 Add note on &T parameters. 2020-08-06 21:11:24 +08:00
Stephen Chung
efe964f009 Fix writeup. 2020-08-06 21:10:41 +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
bb2c9f7c59 Bump version. 2020-08-05 23:11:54 +08:00