fn used_types_representive(&self) -> impl Iterator<Item = TypeDebugRepresentive> {
        let mut array_level_map = HashMap::<&str, u32>::new();
        for type_used in self.used_types() {
            if let Some(array_level) = array_level_map.get_mut(type_used.core_name.as_str()) {
                *array_level = std::cmp::max(*array_level, type_used.array_level)
            } else {
                array_level_map.insert(&type_used.core_name, type_used.array_level);
            }
        }
        array_level_map.entry("int").or_insert(0);
        array_level_map.entry("str").or_insert(0);
        array_level_map.entry("bool").or_insert(0);
        array_level_map.entry("object").or_insert(0);
        array_level_map.entry("<None>").or_insert(0);
        array_level_map
            .into_iter()
            .map(|(core_name, max_array_level)| TypeDebugRepresentive {
                core_name,
                max_array_level,
            })
    }
// Collects all types appeared in the program, and returns representives
// that have the highest array level.
Collects all types appeared in the program, and returns representives
that have the highest array level.
Collects all types appeared in the program and returns representives that have the highest array level .
fn used_types_representive(&self) -> impl Iterator<Item = TypeDebugRepresentive> {
        let mut array_level_map = HashMap::<&str, u32>::new();
        for type_used in self.used_types() {
            if let Some(array_level) = array_level_map.get_mut(type_used.core_name.as_str()) {
                *array_level = std::cmp::max(*array_level, type_used.array_level)
            } else {
                array_level_map.insert(&type_used.core_name, type_used.array_level);
            }
        }
        array_level_map.entry("int").or_insert(0);
        array_level_map.entry("str").or_insert(0);
        array_level_map.entry("bool").or_insert(0);
        array_level_map.entry("object").or_insert(0);
        array_level_map.entry("<None>").or_insert(0);
        array_level_map
            .into_iter()
            .map(|(core_name, max_array_level)| TypeDebugRepresentive {
                core_name,
                max_array_level,
            })
    }
fn used_types_representive ( & self ) -> impl Iterator < Item = TypeDebugRepresentive > { let mut array_level_map = HashMap :: < & str , u32 > :: new ( ) ; for type_used in self . used_types ( ) { if let Some ( array_level ) = array_level_map . get_mut ( type_used . core_name . as_str ( ) ) { * array_level = std :: cmp :: max ( * array_level , type_used . array_level ) } else { array_level_map . insert ( & type_used . core_name , type_used . array_level ) ; } } array_level_map . entry ( " " ) . or_insert ( 0 ) ; array_level_map . entry ( " " ) . or_insert ( 0 ) ; array_level_map . entry ( " " ) . or_insert ( 0 ) ; array_level_map . entry ( " " ) . or_insert ( 0 ) ; array_level_map . entry ( " " ) . or_insert ( 0 ) ; array_level_map . into_iter ( ) . map ( | ( core_name , max_array_level ) | TypeDebugRepresentive { core_name , max_array_level , } ) }
Collects all types appeared in the program, and returns representives
that have the highest array level.
Collects all types appeared in the program and returns representives that have the highest array level .
&self