Commit Graph

2282 Commits

Author SHA1 Message Date
Stephen Chung
a76f4dd6d3 Rename Iterator<Item=T> to Iterator<T> 2022-07-26 14:46:34 +08:00
Stephen Chung
835fa8afa3 Remove warnings. 2022-07-26 12:20:05 +08:00
tamasfe
b7b9ff29e4
feat: basic definitions 2022-07-25 19:01:06 +02:00
Stephen Chung
61056dfb24 Export is_valid_identifier and is_valid_function_name under internals. 2022-07-25 22:05:52 +08:00
Stephen Chung
492d79d8a2 Add documentation to Module. 2022-07-25 17:42:15 +08:00
Stephen Chung
276d4457c3 Add field to get_fn_metadata_list. 2022-07-25 16:59:11 +08:00
Stephen Chung
96bfd93610 Keep module docs as one string. 2022-07-25 14:11:54 +08:00
Stephen Chung
148bbcb860 Fix missing field. 2022-07-25 13:53:28 +08:00
Stephen Chung
5d799fd325 Add module documentation. 2022-07-25 13:40:23 +08:00
Stephen Chung
e8d6e3f57d Add unreachable comments. 2022-07-23 21:00:58 +08:00
Stephen Chung
f85ad28e93 Add FnNamespace methods. 2022-07-21 14:01:28 +08:00
Stephen Chung
6bc0118074 Add FnAccess methods. 2022-07-21 14:01:28 +08:00
Stephen Chung
55dd55322b BLOB + string -> string. 2022-07-21 14:01:10 +08:00
Stephen Chung
753e527cbb Fix BLOB and string operations. 2022-07-20 21:17:21 +08:00
Stephen Chung
8215c75a17 Merge branch 'main' of https://github.com/rhaiscript/rhai 2022-07-20 21:09:03 +08:00
Stephen Chung
ff6a448b77 Merge branch 'main' of https://github.com/rhaiscript/rhai 2022-07-20 21:06:36 +08:00
quake
a0c07631e2 chore: clippy fix rust style 2022-07-20 21:38:50 +09:00
quake
8d91e7eb63 chore: clippy fix useless_conversion 2022-07-20 21:28:40 +09:00
quake
e707b66639 chore: clippy fix unnecessary_mut_passed 2022-07-20 21:22:51 +09:00
quake
299777f1c9 chore: clippy fix needless_borrow 2022-07-20 21:16:35 +09:00
Stephen Chung
87af0db074
Merge pull request #584 from quake/quake/optimize-stmt-switch
fix: optimize_stmt should use fn `position`
2022-07-20 18:08:37 +08:00
quake
e21f7c4f5d fix: optimize_stmt should use fn position 2022-07-20 18:48:54 +09:00
quake
4033543309 chore: remove clippy redundant_allocation since it has been resolved in clippy#7592 2022-07-20 17:05:05 +09:00
Stephen Chung
2ac6336173 Optimize wrapped stmt/expr. 2022-07-19 21:59:49 +08:00
Stephen Chung
5149c56256 Streamline switch case AST structure. 2022-07-19 13:33:53 +08:00
Stephen Chung
281e94fc62 Switch case condition that is constant () no longer optimizes to false. 2022-07-18 23:28:12 +08:00
Stephen Chung
ff6954d9d5 Fix doc comment links. 2022-07-18 23:01:03 +08:00
Stephen Chung
f2724444bb Make default switch case Optional. 2022-07-18 22:30:09 +08:00
Stephen Chung
7dca916c45 Allow duplicated switch cases. 2022-07-18 13:40:41 +08:00
Stephen Chung
4b760d1d0f Unroll switch ranges if possible. 2022-07-18 08:54:10 +08:00
Stephen Chung
107193e35f Update rustyline to 10. 2022-07-17 18:49:12 +08:00
Stephen Chung
a12401a1fe New range variant. 2022-07-17 12:09:19 +08:00
Stephen Chung
fedd09053a Fix typo. 2022-07-06 13:13:21 +08:00
Stephen Chung
dda7bc7b85 Add eval_expression_tree_raw. 2022-07-06 12:56:15 +08:00
Stephen Chung
b4dbc7619a Add no_custom_syntax. 2022-07-05 22:59:03 +08:00
Stephen Chung
b6528bd51d Reduce usage of as_ref and as_mut. 2022-07-05 16:26:38 +08:00
Stephen Chung
9319f87a7b Fix builds. 2022-07-04 17:47:59 +08:00
Stephen Chung
dee66a409f Add case alternatives for switch. 2022-07-04 17:42:24 +08:00
Stephen Chung
6753566b03 Merge set of dynamic functions when merging modules. 2022-06-28 13:57:18 +08:00
Stephen Chung
0031678cd4 Fix shared variable assignment. 2022-06-26 18:09:15 +08:00
Stephen Chung
d9875ff81c Fix sync feature. 2022-06-26 17:14:10 +08:00
Stephen Chung
335957fbc2 Enable modifying constant shared values. 2022-06-26 17:04:08 +08:00
Stephen Chung
7068775f19 Use locked_read. 2022-06-26 14:10:09 +08:00
Stephen Chung
84b8e1ed87 Detect whether dynamic functions exist to save checking. 2022-06-24 11:30:54 +08:00
Stephen Chung
d6bfd8f617 Streamline step ranges. 2022-06-20 18:52:07 +08:00
Stephen Chung
addb579f30 Streamline Dynamic. 2022-06-17 23:36:18 +08:00
Stephen Chung
b592ac1599 Export locked_read. 2022-06-17 23:36:09 +08:00
Stephen Chung
6ea5ed17f4 Use rhai for ignore. 2022-06-12 15:04:06 +08:00
Stephen Chung
2b44778a5c Add elvis operator for indexing. 2022-06-12 00:32:12 +08:00
Stephen Chung
b9cbeb65d6 Use Option instead of once/empty. 2022-06-11 16:01:15 +08:00
Stephen Chung
8999872d62 Add null coalescing operator. 2022-06-10 11:22:33 +08:00
Stephen Chung
0f1e51b1c9 Support Elvis operator. 2022-06-10 10:26:06 +08:00
Stephen Chung
206318e14c Add new reserved symbols. 2022-06-10 08:47:22 +08:00
Stephen Chung
09e19790fe Fix builds. 2022-06-09 18:22:53 +08:00
Stephen Chung
a31a4e4887 Fix builds. 2022-06-09 18:06:00 +08:00
Stephen Chung
dcaac20eb9 Strict mode in functions check for static modules. 2022-06-09 17:59:28 +08:00
Stephen Chung
285bf23dfa Minor refactor. 2022-06-09 08:41:51 +08:00
Stephen Chung
e5f6b28abd Fix warnings. 2022-06-08 17:06:49 +08:00
Stephen Chung
bbaad8dfcb Speed up method calls. 2022-06-08 16:34:56 +08:00
Stephen Chung
f4ebaa7abf Improve chaining speed. 2022-06-08 09:19:21 +08:00
Stephen Chung
8615960cd6 Fix feature. 2022-06-07 20:52:04 +08:00
Stephen Chung
8501d9d33f Improve speed on common dot/index expressions. 2022-06-07 20:38:05 +08:00
Stephen Chung
84e3296559 Fix bug on chaining function calls returning shared values. 2022-06-07 11:31:46 +08:00
Stephen Chung
005692ef78 Change volatile API message. 2022-06-06 08:54:19 +08:00
Stephen Chung
6467b52761 Fix no_function. 2022-06-05 19:35:18 +08:00
Stephen Chung
6ebe002b18 Check for missing docs. 2022-06-05 18:17:44 +08:00
Stephen Chung
c200a609ea Change FnPtr to struct. 2022-05-26 18:18:09 +08:00
Stephen Chung
493c4a71ff Add lifetime. 2022-05-26 18:17:46 +08:00
Stephen Chung
99bcd8497a Remove lifetime on OpAssignment. 2022-05-26 18:17:08 +08:00
Stephen Chung
0e363bd6b7 Make Caches a struct. 2022-05-24 19:34:47 +08:00
Stephen Chung
52bb6e68e8 Add Scope::get. 2022-05-24 16:05:17 +08:00
Stephen Chung
07d3dd6882 Add lifetime to Caches. 2022-05-24 11:52:03 +08:00
Geoffroy Couprie
f2b5566c0b use smartstring's deserializer to support non borrowed strings
The map visitor for Dynamic was expecting a &str for the key, but the
serde_json deserializer internally uses a Cow string, which can be
Borrowed or Owned. In the case of Owned, the serde_json key deserializer
is calling visit_string on the Visitor, which for &str will result in
the error:
Error("invalid type: string \"a\", expected a borrowed string", line: 0,
column: 0)

smartstring actually has its own Visitor implementation that handles
both cases, so we can use it instead of an explicit conversion.
2022-05-23 16:40:49 +02:00
Stephen Chung
ee886fc719 Fix builds. 2022-05-21 22:13:02 +08:00
Stephen Chung
1abec0a8a8 Allow initialization of EvalState tag and separate debugger state into separate variable. 2022-05-21 21:44:12 +08:00
Stephen Chung
9c1a49da0b Fix AST combine. 2022-05-21 11:31:15 +08:00
Stephen Chung
46c1d86221 Fix merge AST with self-contained AST. 2022-05-20 21:49:27 +08:00
Stephen Chung
8f73796110 Fix builds. 2022-05-19 21:49:19 +08:00
Stephen Chung
130b93d029 Use bit-flags for options. 2022-05-19 21:40:22 +08:00
Stephen Chung
857ae7a64a Comments update. 2022-05-19 14:41:48 +08:00
Stephen Chung
dd8c18369b Use call_native_fn. 2022-05-19 14:36:58 +08:00
Stephen Chung
47d0d014e3 Reduce cloning. 2022-05-19 14:32:43 +08:00
Stephen Chung
a53bcc2e1d Add EvalAltResult::IndexNotFound. 2022-05-19 10:02:12 +08:00
Stephen Chung
7c8c6659ae Better encapsulate EvalContext. 2022-05-17 16:21:17 +08:00
Stephen Chung
04df4d2547 Fix indexing parsing. 2022-05-17 11:06:34 +08:00
Stephen Chung
c7aea45d4b Add to_int for decimal. 2022-05-09 14:20:33 +08:00
Stephen Chung
b4fea634b0 Avoid unnecessary allocations. 2022-05-07 16:29:20 +08:00
Stephen Chung
4194e2c048 Refine data structures. 2022-05-07 15:54:44 +08:00
Stephen Chung
fc64e93b93 Deprecate FnPtr::num_curried. 2022-05-05 22:30:55 +08:00
Stephen Chung
b23d64bec0 Fix bug with using self-contained AST with call_fn. 2022-05-05 21:34:15 +08:00
Stephen Chung
2a57bd9d25 Mark some types as non_exhaustive. 2022-05-03 21:55:08 +08:00
Stephen Chung
516f5a82a0 Use tag for debugger state. 2022-05-03 21:55:01 +08:00
Stephen Chung
4f74d2f96a Minor cleanup. 2022-05-02 12:14:53 +08:00
Stephen Chung
c69f98c2c4 Add custom state. 2022-05-02 00:03:45 +08:00
Stephen Chung
98e0042214 Fix build. 2022-04-26 18:32:43 +08:00
Stephen Chung
2889ca0988 Add Start/End to DebuggerEvent. 2022-04-26 16:36:24 +08:00
Stephen Chung
34dfe841cd Add commands to rhai-dbg. 2022-04-24 16:06:11 +08:00
Stephen Chung
5a756e0899 Remove generics for call_fn_raw_raw. 2022-04-23 15:25:00 +08:00
Stephen Chung
1d904f4758 Add Engine::eval_statements_raw. 2022-04-23 13:37:08 +08:00
Stephen Chung
0ef5c0ec54 Change to call_fn_raw_raw. 2022-04-23 13:28:26 +08:00