definition module type_io_equal_types from typetable import :: TypeTable from type_io_read import :: TypeTableTypeReference, :: TypeIOState, :: TIO_CommonDefs from StdDynamicTypes import :: TIO_TypeReference // converts a a type reference into an (unique) index compute_index_in_type_cache :: !TIO_TypeReference !TIO_TypeReference !*TypeIOState -> (!Int,!*TypeIOState) class EqTypes a where equal_types :: a a !*{#TIO_CommonDefs} !*TypeIOState -> (!Bool,!*{#TIO_CommonDefs},!*TypeIOState) instance EqTypes TIO_TypeReference :: OrderedTypeRef = { otr_type_ref1 :: TypeTableTypeReference , otr_type_ref2 :: TypeTableTypeReference }; :: *EqTypesState default_eq_types_state :: *EqTypesState; class EqTypesExtended a where equal_type_defs :: !a !a !{#*TypeTable} !*EqTypesState -> (!Bool,!{#*TypeTable},!*EqTypesState) instance EqTypesExtended TypeTableTypeReference;