feat(execution-engine): Rc-based JSON value (#813)

Use custom JSON value type with Rc inside.  It cannot be edited, but producing new values based on child element is very cheap.

This new type is used exclusively in AquaVM internals.  Interface APIs use serde_json's Value or JSON strings, as before.
---------

Co-authored-by: raftedproc <71657594+raftedproc@users.noreply.github.com>
This commit is contained in:
Ivan Boldyrev
2024-02-13 16:11:21 +04:00
committed by GitHub
parent f887ddddbc
commit 0d53f2bab1
88 changed files with 3239 additions and 1747 deletions

View File

@ -690,7 +690,7 @@ mod tests {
#[test]
fn test_transformed_shared() {
struct Service {
state: RefCell<std::vec::IntoIter<JValue>>,
state: RefCell<std::vec::IntoIter<serde_json::Value>>,
}
impl MarineService for Service {