fn update_measurement_address<'a>(
    measurement: &mut Measurement,
    debug_data: &'a DebugData
) -> Result<&'a TypeInfo, Vec<String>> {
    match get_symbol_info(
        &measurement.name,
        &measurement.symbol_link,
        &measurement.if_data,
        debug_data
    ) {
        Ok((address, symbol_datatype, symbol_name)) => {
            // make sure a valid SYMBOL_LINK exists
            set_symbol_link(&mut measurement.symbol_link, symbol_name.clone());
            set_measurement_ecu_address(&mut measurement.ecu_address, address);
            measurement.datatype = get_a2l_datatype(symbol_datatype);
            set_measurement_bitmask(&mut measurement.bit_mask, symbol_datatype);
            update_ifdata(&mut measurement.if_data, symbol_name, symbol_datatype, address);

            Ok(symbol_datatype)
        }
        Err(errmsgs) => Err(errmsgs)
    }
}
// update the address of a MEASUREMENT object
update the address of a MEASUREMENT object
update the address of a MEASUREMENT object
fn update_measurement_address<'a>(
    measurement: &mut Measurement,
    debug_data: &'a DebugData
) -> Result<&'a TypeInfo, Vec<String>> {
    match get_symbol_info(
        &measurement.name,
        &measurement.symbol_link,
        &measurement.if_data,
        debug_data
    ) {
        Ok((address, symbol_datatype, symbol_name)) => {
            // make sure a valid SYMBOL_LINK exists
            set_symbol_link(&mut measurement.symbol_link, symbol_name.clone());
            set_measurement_ecu_address(&mut measurement.ecu_address, address);
            measurement.datatype = get_a2l_datatype(symbol_datatype);
            set_measurement_bitmask(&mut measurement.bit_mask, symbol_datatype);
            update_ifdata(&mut measurement.if_data, symbol_name, symbol_datatype, address);
            Ok(symbol_datatype)
        }
        Err(errmsgs) => Err(errmsgs)
    }
}
fn update_measurement_address < ' a > ( measurement : & mut Measurement , debug_data : & ' a DebugData ) -> Result < & ' a TypeInfo , Vec < String > > { match get_symbol_info ( & measurement . name , & measurement . symbol_link , & measurement . if_data , debug_data ) { Ok ( ( address , symbol_datatype , symbol_name ) ) => { // make sure a valid SYMBOL_LINK exists set_symbol_link ( & mut measurement . symbol_link , symbol_name . clone ( ) ) ; set_measurement_ecu_address ( & mut measurement . ecu_address , address ) ; measurement . datatype = get_a2l_datatype ( symbol_datatype ) ; set_measurement_bitmask ( & mut measurement . bit_mask , symbol_datatype ) ; update_ifdata ( & mut measurement . if_data , symbol_name , symbol_datatype , address ) ; Ok ( symbol_datatype ) } Err ( errmsgs ) => Err ( errmsgs ) } }
update the address of a MEASUREMENT object
update the address of a MEASUREMENT object
measurement
&mut Measurement
debug_data
&'a DebugData