Commit Graph

3202 Commits

Author SHA1 Message Date
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
6b57331c60
Merge pull request #564 from schungx/master
Bug fixes and some enhancements.
2022-05-21 22:31:52 +08: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
5435fdb8c8 Fix tests. 2022-05-21 11:57:23 +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
42d2718e24 Fix test. 2022-05-19 16:56: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
591f7d7362 Add tests for index type checks. 2022-05-17 15:20:32 +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
afc4a35144
Merge pull request #559 from schungx/master
Fix bug with using self-contained AST with call_fn.
2022-05-05 22:22:58 +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
4fff1d8e7f
Merge pull request #558 from schungx/master
Cleanup for 1.7.0.
2022-05-04 09:23:07 +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
7d80c438e4
Merge pull request #557 from schungx/master
Ready version 1.7.0.
2022-05-03 16:56:52 +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
ba475a7ad4
Merge pull request #555 from schungx/master
New advanced API's.
2022-04-23 14:02:19 +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
Stephen Chung
d61f7fa7c2 Add call_fn_with_global_raw. 2022-04-23 13:15:27 +08:00
Stephen Chung
63592ed648 Remove Clone from FileModuleResolver. 2022-04-23 12:49:03 +08:00
Stephen Chung
c2a796f9c2 Replace Scope display code. 2022-04-23 11:53:34 +08:00
Stephen Chung
5a75479119 Fix bug in Scope cloning. 2022-04-23 11:53:17 +08:00
Stephen Chung
71bc605fe6 Add scope to FileModuleResolver. 2022-04-22 13:39:51 +08:00
Stephen Chung
2755d39cdf Return early if no type casting for call_fn. 2022-04-22 12:12:55 +08:00
Stephen Chung
a6c2c00479 Allow variables in scope for strict vars. 2022-04-22 12:12:36 +08:00
Stephen Chung
cfc02b9408
Merge pull request #554 from schungx/master
New enhancements.
2022-04-21 16:16:16 +08:00
Stephen Chung
6f4cc91451 Fix builds. 2022-04-21 16:01:20 +08:00
Stephen Chung
6b8ddd925b Allow scope constants in strict variables mode. 2022-04-21 13:21:53 +08:00
Stephen Chung
c3d013bddc Add to_json for maps. 2022-04-21 12:15:21 +08:00
Stephen Chung
4f2764d233 Revise parse_json. 2022-04-21 10:04:57 +08:00
Stephen Chung
5e4f27ae25 Add Token::Unit. 2022-04-21 10:04:46 +08:00
Stephen Chung
299d6ef308 Type checking in switch case condition. 2022-04-19 21:45:11 +08:00