package metricshelper

import ma 

var transports = [...]int{ma.P_CIRCUIT, ma.P_WEBRTC, ma.P_WEBRTC_DIRECT, ma.P_WEBTRANSPORT, ma.P_QUIC, ma.P_QUIC_V1, ma.P_WSS, ma.P_WS, ma.P_TCP}

func ( ma.Multiaddr) string {
	if  == nil {
		return "other"
	}
	for  := len() - 1;  >= 0; -- {
		 := [].Protocol()
		for ,  := range transports {
			if .Code ==  {
				return .Name
			}
		}
	}
	return "other"
}

func ( ma.Multiaddr) string {
	 := "unknown"
	if  == nil {
		return 
	}
	ma.ForEach(, func( ma.Component) bool {
		switch .Protocol().Code {
		case ma.P_IP4, ma.P_DNS4:
			 = "ip4"
		case ma.P_IP6, ma.P_DNS6:
			 = "ip6"
		}
		return false
	})
	return 
}