MooseX...tNumber(3pm)
π MooseX::Types::PortNumber π
okay so bestie, welcome to MooseX::Types::PortNumber β it's a Moose type library for port numbers, and it's brought to you straight from the Internet Assigned Numbers Authority (IANA). yes, that IANA. the port police. the ones who decide which numbers get to be ports. periodt. π
this little cutie lives in the perl man pages (section 3pm, user contributed perl documentation, iykyk) and it's giving extremely niche but extremely useful.
β¨ VERSION β¨
version 0.03 β she's tiny but she's mighty π
πΈ SYNOPSIS πΈ
okay so here's the whole vibe, no cap:
package MyClass;
use Moose;
use MooseX::Types::PortNumber
qw( PortNumber PortWellKnow PortRegistered PortPrivate );
has port => ( isa => PortNumber, is => 'ro' );
has well => ( isa => PortWellKnow, is => 'ro' );
has reg => ( isa => PortRegistered, is => 'ro' );
has priv => ( isa => PortPrivate, is => 'ro' );
look at that. four attributes, four types, all of them is => 'ro' because we're chill like that. π¦
π DESCRIPTION π
so the port numbers get split into three ranges, and the way that they do it is iconic:
- the Well Known Ports β those are the ones from
0through1023 - the Registered Ports β those are the ones from
1024through49151 - the Dynamic and/or Private Ports β those are the ones from
49152through65535
and now the serious part, bestie, listen up: DCCP Well Known ports SHOULD NOT be used without IANA registration. the registration procedure is defined in[RFC4340], Section19.9. don't skip the paperwork, it's not cute. π
same energy for the middle range: DCCP Registered ports SHOULD NOT be used without IANA registration. and again, the registration procedure is defined in[RFC4340], Section19.9. fr fr. π«Ά
π SEE ALSO π
go touch some grass, or alternatively, go read the actual list of ports:
π οΈ SUPPORT π οΈ
found a bug? (rude, but okay.) bugs may be submitted through the RT bug tracker:
or you can email bug-moosex-types-portnumber@rt.cpan.org π§
also, the author is usually hanging out on IRC as 'drolsky' on irc://irc.perl.org β so if you wanna vibe check them directly, that's where. π¬
πΈ DONATIONS πΈ
okay so this part is genuinely so sweet. if you'd like to thank the author for the work they've done on this module, please consider making a "donation" via PayPal. they spend a lot of free time creating free software and would appreciate any support you'd care to offer. π₯Ήπ
but β and this is important β they are not suggesting that you must do this in order for them to continue working on this particular software. they will continue to do so, inasmuch as they have in the past, for as long as it interests them.
similarly, a donation made this way will probably not make them work on this software much more, unless they get so many donations that they can consider working on free software full time (let's all have a chuckle at that together π).
to donate, log into PayPal and send money to autarch@urth.org, or use the button at:
π AUTHORS π
the legends themselves:
- Thiago Rondon
<thiago@aware.com.br> - Dave Rolsky
<autarch@urth.org>
π COPYRIGHT AND LICENSE π
this software is copyright (c) 2016 by Thiago Rondon & Dave Rolsky.
this is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. slay. π
and that's the whole page, bestie!! this doc was rendered by perl v5.34.0 on 2022-06-16 β so yeah, it's been around a minute, but she still eats. go forth and type your ports responsibly. πβ¨
π¦ where this page comes from
- debian bookworm: libmoosex-types-portnumber-perl 0.03-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- debian trixie: libmoosex-types-portnumber-perl 0.03-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu noble: libmoosex-types-portnumber-perl 0.03-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libmoosex-types-portnumber-perl 0.03-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libmoosex-types-portnumber-perl 0.03-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms