fn on_reply(_env: *mut ()) {
    let (reply, _) =
        candid::Decode!(&api::arg_data()[..], Reply, Vec<u8>).expect("failed to decode response");
    let elapsed = Duration::from_nanos((time_nanos() - reply.time_nanos) as u64);
    METRICS.with(|m| m.borrow_mut().latency_distribution.observe(elapsed));
}
/// Callback for handling replies from "handle_request".
Callback for handling replies from "handle_request".
Callback for handling replies from " handle_request " .
fn on_reply(_env: *mut ()) {
    let (reply, _) =
        candid::Decode!(&api::arg_data()[..], Reply, Vec<u8>).expect("failed to decode response");
    let elapsed = Duration::from_nanos((time_nanos() - reply.time_nanos) as u64);
    METRICS.with(|m| m.borrow_mut().latency_distribution.observe(elapsed));
}
fn on_reply ( _env : * mut ( ) ) { let ( reply , _ ) = candid :: Decode ! ( api arg_data ( ) [ ] Reply Vec u8 ) . expect ( " " ) ; let elapsed = Duration :: from_nanos ( ( time_nanos ( ) - reply . time_nanos ) as u64 ) ; METRICS . with ( | m | m . borrow_mut ( ) . latency_distribution . observe ( elapsed ) ) ; }
Callback for handling replies from "handle_request".
Callback for handling replies from " handle_request " .
_env
*mut ()
_env
*mut ()