@@ -106,8 +106,13 @@ pub fn prepare_measurement(
106106}
107107
108108pub fn construct_randomness_request ( rrs : & RandomnessRequestStateWrapper ) -> Vec < VecU8 > {
109- let res = client:: construct_randomness_request ( & rrs. 0 . as_ref ( ) . unwrap ( ) ) ;
110- res. into_iter ( ) . map ( |v| VecU8 { data : v } ) . collect ( )
109+ match rrs. 0 . as_ref ( ) {
110+ Some ( rrs) => {
111+ let res = client:: construct_randomness_request ( rrs) ;
112+ res. into_iter ( ) . map ( |v| VecU8 { data : v } ) . collect ( )
113+ }
114+ None => Vec :: new ( ) ,
115+ }
111116}
112117
113118pub fn construct_message (
@@ -118,19 +123,29 @@ pub fn construct_message(
118123 aux_bytes : & CxxVector < u8 > ,
119124 threshold : u32 ,
120125) -> ByteDataResult {
121- let rand_points_vec: Vec < & [ u8 ] > = rand_points. iter ( ) . map ( |v| v. data . as_slice ( ) ) . collect ( ) ;
122- let rand_proofs_vec: Vec < & [ u8 ] > = rand_proofs. iter ( ) . map ( |v| v. data . as_slice ( ) ) . collect ( ) ;
123- let res = client:: construct_message (
124- & rand_points_vec,
125- if !rand_proofs. is_empty ( ) { Some ( & rand_proofs_vec) } else { None } ,
126- rrs. 0 . as_ref ( ) . unwrap ( ) ,
127- & verification_key. 0 ,
128- aux_bytes. as_slice ( ) ,
129- threshold,
130- ) ;
131- match res {
132- Ok ( data) => ByteDataResult { data, error : String :: new ( ) } ,
133- Err ( e) => ByteDataResult { data : Vec :: new ( ) , error : e. to_string ( ) } ,
126+ match rrs. 0 . as_ref ( ) {
127+ Some ( rrs) => {
128+ let rand_points_vec: Vec < & [ u8 ] > =
129+ rand_points. iter ( ) . map ( |v| v. data . as_slice ( ) ) . collect ( ) ;
130+ let rand_proofs_vec: Vec < & [ u8 ] > =
131+ rand_proofs. iter ( ) . map ( |v| v. data . as_slice ( ) ) . collect ( ) ;
132+ let res = client:: construct_message (
133+ & rand_points_vec,
134+ if !rand_proofs. is_empty ( ) { Some ( & rand_proofs_vec) } else { None } ,
135+ rrs,
136+ & verification_key. 0 ,
137+ aux_bytes. as_slice ( ) ,
138+ threshold,
139+ ) ;
140+ match res {
141+ Ok ( data) => ByteDataResult { data, error : String :: new ( ) } ,
142+ Err ( e) => ByteDataResult { data : Vec :: new ( ) , error : e. to_string ( ) } ,
143+ }
144+ }
145+ None => ByteDataResult {
146+ data : Vec :: new ( ) ,
147+ error : "Randomness request state is not present" . to_string ( ) ,
148+ } ,
134149 }
135150}
136151
0 commit comments