/ tests / tests / execution / tuple_assignments.adl
tuple_assignments.adl
 1  /*
 2  seed = 123456789
 3  min_height = 16
 4  
 5  [case]
 6  program = "test.alpha"
 7  function = "main"
 8  input = ["1u64", "2u64", "3u64", "4u64", "true", "true", "true"]
 9  [case]
10  program = "test.alpha"
11  function = "main"
12  input = ["1u64", "2u64", "3u64", "4u64", "false", "true", "true"]
13  [case]
14  program = "test.alpha"
15  function = "main"
16  input = ["1u64", "2u64", "3u64", "4u64", "false", "true", "false"]
17  [case]
18  program = "test.alpha"
19  function = "main"
20  input = ["1u64", "2u64", "3u64", "4u64", "false", "false", "true"]
21  [case]
22  program = "test.alpha"
23  function = "main"
24  input = ["1u64", "2u64", "3u64", "4u64", "false", "false", "false"]
25  */
26  
27  program test.alpha {
28      transition main(a: u64, b: u64, c: u64, d: u64, y: bool, w: bool, z: bool) -> (public u64, public u64, public u64, public u64) {
29          let tuple: (u64, u64, u64, u64) = (a, b, c, d);
30  
31          if y {
32              if w {
33                  tuple.0 = 100u64;
34                  tuple.1 = 200u64;
35              } else {
36                  tuple.2 = 300u64;
37              }
38              tuple.3 = 400u64;
39          } else if z {
40              if w {
41                  tuple.0 = 500u64;
42                  tuple.2 = 600u64;
43              } else {
44                  tuple.1 = 700u64;
45              }
46          } else {
47              tuple.3 = 800u64;
48          }
49  
50          return tuple;
51      }
52  
53        @noupgrade
54        async constructor() {}
55  }