fn collect_args(target: &Target, call: &mut Call) -> (Vec<*mut Value>, Vec<u64>) {
    let mut arg_addrs = Vec::new();
    let mut prios = Vec::new();
    let mut prio_sum = 0;

    foreach_call_arg_mut(call, |val| {
        let prio = val_prio(target, val);
        if prio == NEVER_MUTATE || !val_mutable(target, val) {
            return;
        }
        prio_sum += prio;
        arg_addrs.push(val as *mut _);
        prios.push(prio_sum);
    });

    (arg_addrs, prios)
}
/// Collect args of `call`, return the addresses and corresponding prios
Collect args of `call`, return the addresses and corresponding prios
Collect args of ` call ` return the addresses and corresponding prios
fn collect_args(target: &Target, call: &mut Call) -> (Vec<*mut Value>, Vec<u64>) {
    let mut arg_addrs = Vec::new();
    let mut prios = Vec::new();
    let mut prio_sum = 0;
    foreach_call_arg_mut(call, |val| {
        let prio = val_prio(target, val);
        if prio == NEVER_MUTATE || !val_mutable(target, val) {
            return;
        }
        prio_sum += prio;
        arg_addrs.push(val as *mut _);
        prios.push(prio_sum);
    });
    (arg_addrs, prios)
}
fn collect_args ( target : & Target , call : & mut Call ) -> ( Vec < * mut Value > , Vec < u64 > ) { let mut arg_addrs = Vec :: new ( ) ; let mut prios = Vec :: new ( ) ; let mut prio_sum = 0 ; foreach_call_arg_mut ( call , | val | { let prio = val_prio ( target , val ) ; if prio == NEVER_MUTATE || ! val_mutable ( target , val ) { return ; } prio_sum += prio ; arg_addrs . push ( val as * mut _ ) ; prios . push ( prio_sum ) ; } ) ; ( arg_addrs , prios ) }
Collect args of `call`, return the addresses and corresponding prios
Collect args of ` call ` return the addresses and corresponding prios
target
&Target
call
&mut Call
target
&Target
call
&mut Call