/ tests / tests / compiler / expression / ternary.adl
ternary.adl
 1  
 2  program test.alpha {
 3      transition main(
 4          a: address, b: bool, c: field, d: i8, e: i16, f: i64, g: i128, h: u8, i: u16, j: u32, k: u64, l: u128, m: scalar, n: i32
 5      ) -> (
 6          address, bool, field, i8, i16, i64, i128, u8, u16, u32, u64, u128, scalar, i32
 7      ) {
 8          let one: address = b ? a : a;
 9          let two: bool = b ? b : b;
10          let three: field = b ? c : c;
11          let four: i8 = b ? d : d;
12          let five: i16 = b ? e : e;
13          let six: i64 = b ? f : f;
14          let seven: i128 = b ? g : g;
15          let eight: u8 = b ? h : h;
16          let nine: u16 = b ? i : i;
17          let ten: u32 = b ? j : j;
18          let eleven: u64 = b ? k : k;
19          let twelve: u128 = b ? l : l;
20          let thirteen: scalar = b ? m : m;
21          let fourteen: i32 = b ? n : n;
22          return (one, two, three, four, five, six, seven, eight, nine, ten, eleven, twelve, thirteen, fourteen);
23      }
24  }