Mike Voronov 9fe7afb897
feat(all): reduce stream usage scope (#298)
This PR intended to reduce stream usage scope in order to make AquaVM truly deterministic.

Refs: #297.

Co-authored-by: Ivan Boldyrev <ivan@fluence.one>
Co-authored-by: Anatoly Laskaris <github_me@nahsi.dev>
2022-11-30 17:38:32 +03:00

60 lines
1.7 KiB
Plaintext

(xor
(seq
(seq
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
(new $res
(seq
(seq
(seq
(call -relay- ("op" "noop") [])
(xor
(seq
(call "12D3KooWSD5PToNiLQwKDXsu8JSysCwUt8BVUJEqCHcDe7P5h45e" ("op" "string_to_b58") ["12D3KooWSD5PToNiLQwKDXsu8JSysCwUt8BVUJEqCHcDe7P5h45e"] k)
(par
(seq
(call "12D3KooWSD5PToNiLQwKDXsu8JSysCwUt8BVUJEqCHcDe7P5h45e" ("kad" "neighborhood") [k [] []] nodes)
(call %init_peer_id% ("op" "noop") [])
)
(seq
(fold nodes n
(par
(seq
(xor
(call n ("peer" "timestamp_ms") [] $res)
(seq
(call -relay- ("op" "noop") [])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
)
)
(call %init_peer_id% ("op" "noop") [])
)
(next n)
)
)
(call %init_peer_id% ("op" "noop") [])
)
)
)
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
)
)
(par
(seq
(canon %init_peer_id% $res #res)
(call %init_peer_id% ("op" "identity") [#res.$.[19]!])
)
(call %init_peer_id% ("peer" "timeout") [1000 "timeout"])
)
)
(seq
(canon %init_peer_id% $res #res)
(call %init_peer_id% ("op" "identity") [#res] res-fix)
)
)
)
)
(call %init_peer_id% ("--after-callback-srv-service--" "print-and-stop") [res-fix nodes])
)
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
)