pub(crate) fn update_addresses(
    a2l_file: &mut A2lFile,
    debug_data: &DebugData,
    log_msgs: &mut Vec<String>,
    preserve_unknown: bool
) -> UpdateSumary {
    let use_new_matrix_dim = check_version_1_70(a2l_file);

    let mut summary = UpdateSumary::new();
    for module in &mut a2l_file.project.module {
        let mut reclayout_info = RecordLayoutInfo::build(module);

        // update all AXIS_PTS
        let (updated, not_updated) = update_module_axis_pts(
            module,
            debug_data,
            log_msgs,
            preserve_unknown,
            &mut reclayout_info
        );
        summary.measurement_updated += updated;
        summary.measurement_not_updated += not_updated;

        // update all MEASUREMENTs
        let (updated, not_updated) = update_module_measurements(
            module,
            debug_data,
            log_msgs,
            preserve_unknown,
            use_new_matrix_dim
        );
        summary.measurement_updated += updated;
        summary.measurement_not_updated += not_updated;

        // update all CHARACTERISTICs
        let (updated, not_updated) = update_module_characteristics(
            module,
            debug_data,
            log_msgs,
            preserve_unknown,
            &mut reclayout_info
        );
        summary.characteristic_updated += updated;
        summary.characteristic_not_updated += not_updated;

        // update all BLOBs
        let (updated, not_updated) = update_module_blobs(
            module,
            debug_data,
            log_msgs,
            preserve_unknown
        );
        summary.blob_updated += updated;
        summary.blob_not_updated += not_updated;

        // update all INSTANCEs
        let (updated, not_updated) = update_module_instances(
            module,
            debug_data,
            log_msgs,
            preserve_unknown
        );
        summary.blob_updated += updated;
        summary.blob_not_updated += not_updated;
    }

    summary
}
// perform an address update.
// This update can be destructive (any object that cannot be updated will be discarded)
// or non-destructive (addresses of invalid objects will be set to zero).
perform an address update.
This update can be destructive (any object that cannot be updated will be discarded)
or non-destructive (addresses of invalid objects will be set to zero).
perform an address update . This update can be destructive ( any object that cannot be updated will be discarded ) or non - destructive ( addresses of invalid objects will be set to zero ) .
pub(crate) fn update_addresses(
    a2l_file: &mut A2lFile,
    debug_data: &DebugData,
    log_msgs: &mut Vec<String>,
    preserve_unknown: bool
) -> UpdateSumary {
    let use_new_matrix_dim = check_version_1_70(a2l_file);
    let mut summary = UpdateSumary::new();
    for module in &mut a2l_file.project.module {
        let mut reclayout_info = RecordLayoutInfo::build(module);
        // update all AXIS_PTS
        let (updated, not_updated) = update_module_axis_pts(
            module,
            debug_data,
            log_msgs,
            preserve_unknown,
            &mut reclayout_info
        );
        summary.measurement_updated += updated;
        summary.measurement_not_updated += not_updated;
        // update all MEASUREMENTs
        let (updated, not_updated) = update_module_measurements(
            module,
            debug_data,
            log_msgs,
            preserve_unknown,
            use_new_matrix_dim
        );
        summary.measurement_updated += updated;
        summary.measurement_not_updated += not_updated;
        // update all CHARACTERISTICs
        let (updated, not_updated) = update_module_characteristics(
            module,
            debug_data,
            log_msgs,
            preserve_unknown,
            &mut reclayout_info
        );
        summary.characteristic_updated += updated;
        summary.characteristic_not_updated += not_updated;
        // update all BLOBs
        let (updated, not_updated) = update_module_blobs(
            module,
            debug_data,
            log_msgs,
            preserve_unknown
        );
        summary.blob_updated += updated;
        summary.blob_not_updated += not_updated;
        // update all INSTANCEs
        let (updated, not_updated) = update_module_instances(
            module,
            debug_data,
            log_msgs,
            preserve_unknown
        );
        summary.blob_updated += updated;
        summary.blob_not_updated += not_updated;
    }
    summary
}
pub ( crate ) fn update_addresses ( a2l_file : & mut A2lFile , debug_data : & DebugData , log_msgs : & mut Vec < String > , preserve_unknown : bool ) -> UpdateSumary { let use_new_matrix_dim = check_version_1_70 ( a2l_file ) ; let mut summary = UpdateSumary :: new ( ) ; for module in & mut a2l_file . project . module { let mut reclayout_info = RecordLayoutInfo :: build ( module ) ; // update all AXIS_PTS let ( updated , not_updated ) = update_module_axis_pts ( module , debug_data , log_msgs , preserve_unknown , & mut reclayout_info ) ; summary . measurement_updated += updated ; summary . measurement_not_updated += not_updated ; // update all MEASUREMENTs let ( updated , not_updated ) = update_module_measurements ( module , debug_data , log_msgs , preserve_unknown , use_new_matrix_dim ) ; summary . measurement_updated += updated ; summary . measurement_not_updated += not_updated ; // update all CHARACTERISTICs let ( updated , not_updated ) = update_module_characteristics ( module , debug_data , log_msgs , preserve_unknown , & mut reclayout_info ) ; summary . characteristic_updated += updated ; summary . characteristic_not_updated += not_updated ; // update all BLOBs let ( updated , not_updated ) = update_module_blobs ( module , debug_data , log_msgs , preserve_unknown ) ; summary . blob_updated += updated ; summary . blob_not_updated += not_updated ; // update all INSTANCEs let ( updated , not_updated ) = update_module_instances ( module , debug_data , log_msgs , preserve_unknown ) ; summary . blob_updated += updated ; summary . blob_not_updated += not_updated ; } summary }
perform an address update.
perform an address update .
a2l_file
&mut A2lFile
debug_data
&DebugData
log_msgs
&mut Vec<String>
preserve_unknown
bool