boneyard93501 7795d24f34
add quickstart 4 examples (#26)
* init quickstart 4

* fix Op indentation

* update packages
2021-10-12 11:47:57 -05:00

58 lines
1.4 KiB
Plaintext

-- service interface for Wasm module
service AddOne:
add_one: u64 -> u64
-- identity service for formatting stream var
service MyOp("op"):
identity(u: u64)
-- convenience struc for (Peer Id, Service Id) tuples
data NodeServiceTuple:
node_id: string
service_id: string
func add_one(value: u64, node: string, service_id: string) -> u64:
on node:
AddOne service_id
res <- AddOne.add_one(value)
<- res
func add_one_three_times(value: u64, ns_tuples: []NodeServiceTuple) -> u64:
on ns_tuples!0.node_id:
AddOne ns_tuples!0.service_id
res1 <- AddOne.add_one(value)
on ns_tuples!1.node_id:
AddOne ns_tuples!1.service_id
res2 <- AddOne.add_one(res1)
on ns_tuples!2.node_id:
AddOne ns_tuples!2.service_id
res3 <- AddOne.add_one(res2)
<- res3
func add_one_par(value: u64, ns_tuples: []NodeServiceTuple) -> []u64:
res: *u64
for ns <- ns_tuples par:
on ns.node_id:
AddOne ns.service_id
res <- AddOne.add_one(value)
MyOp.identity(res!2)
<- res
data ValueNodeService:
node_id: string
service_id: string
value: u64
func add_one_par_alt(payload: []ValueNodeService) -> []u64:
res: *u64
for vns <- payload par:
on vns.node_id:
AddOne vns.service_id
res <- AddOne.add_one(vns.value)
MyOp.identity(res!2)
<- res