github.com/nevalang/neva@v0.23.1-0.20240507185603-7696a9bb8dda/e2e/add_nums_from_stdin_with_sub_components/main/main.neva (about) 1 import { 2 io 3 strconv 4 } 5 6 component { 7 Main(start any) (stop any) { 8 nodes { Aux, Println<any> } 9 10 :start -> aux:sig 11 aux:res -> println:data 12 aux:err -> println:data 13 println:sig -> :stop 14 } 15 16 Aux(sig any) (res int, err error) { 17 nodes { 18 reader1 IntReader 19 reader2 IntReader 20 adder ReducePort<int> { Add<int> } 21 } 22 23 :sig -> reader1:sig 24 reader1:num -> [adder:port[0], reader2:sig] 25 reader1:err -> :err 26 reader2:err -> :err 27 reader2:num -> adder:port[1] 28 adder:res -> :res 29 } 30 31 IntReader(sig any) (num int, err error) { 32 nodes { io.Scanln, strconv.ParseNum<int> } 33 34 :sig -> scanln:sig 35 scanln:data -> parseNum:data 36 parseNum:res -> :num 37 parseNum:err -> :err 38 } 39 }