/ tests / tests / compiler / core / algorithms / bhp768_hash_to_group.adl
bhp768_hash_to_group.adl
 1  
 2  program test.alpha {
 3      struct Foo {
 4          a: u128,
 5          b: u128,
 6      }
 7  
 8      transition main(
 9          i8_value: i8,
10          i16_value: i16,
11          i32_value: i32,
12          i64_value: i64,
13          u8_value: u8,
14          u16_value: u16,
15          u32_value: u32,
16          u64_value: u64,
17      ) -> (group, group, group, group, group, group, group, group, group, group, group, group, group, group, group, group, ) {
18          let addr_value: address = ax10qerras5799u6k7rjtc9y3hcwxuykr45qra7x7dp6jgnc0923czqm0lgta;
19          let bool_value: bool = true;
20          let field_value: field = 1field;
21          let group_value: group = group::GEN;
22          let i128_value: i128 = 1i128;
23          let u128_value: u128 = 1u128;
24          let scalar_value: scalar = 1scalar;
25          // let string_value: string = "helloworld";
26  
27          // BHP768 hash_to_group tests
28          let a: group = BHP768::hash_to_group(addr_value);
29          let b: group = BHP768::hash_to_group(bool_value);
30          let c: group = BHP768::hash_to_group(field_value);
31          let d: group = BHP768::hash_to_group(group_value);
32          let e: group = BHP768::hash_to_group(i8_value);
33          let f: group = BHP768::hash_to_group(i16_value);
34          let g: group = BHP768::hash_to_group(i32_value);
35          let h: group = BHP768::hash_to_group(i64_value);
36          let i: group = BHP768::hash_to_group(i128_value);
37          let j: group = BHP768::hash_to_group(u8_value);
38          let k: group = BHP768::hash_to_group(u16_value);
39          let l: group = BHP768::hash_to_group(u32_value);
40          let m: group = BHP768::hash_to_group(u64_value);
41          let n: group = BHP768::hash_to_group(u128_value);
42          let o: group = BHP768::hash_to_group(scalar_value);
43          // let p: group = BHP768::hash_to_group(string_value);
44          let q: group = BHP768::hash_to_group(Foo { a: 1u128, b: 1u128 });
45  
46          return (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, q);
47      }}