impl has_type