# This logic seems to belong somewhere related to URI but not in the URI # module itself. unit class URI::DefaultPort; my Int %default_port = ( ftp => 21, sftp => 22, ssh => 22, telnet => 23, tn3270 => 23, smtp => 25, gopher => 70, http => 80, shttp => 80, pop => 110, news => 119, nntp => 119, imap => 143, ldap => 389, https => 443, rlogin => 513, rtsp => 554, rtspu => 554, snews => 563, ldaps => 636, rsync => 873, mms => 1755, sip => 5060, sips => 5061, git => 9418 ); method scheme-port(Str $scheme) { %default_port{$scheme}; } =begin pod =head1 NAME URI::DefaultPort - Stores the default ports for various services =head1 SYNOPSIS use URI::DefaultPort; say scheme-port( "https" ); # 443 =end pod