MooseX...s::URI(3pm)

πŸ“¦
version 0.10 Β· 5 versions
, in debian trixie, ubuntu resolute, ubuntu stonking

πŸ’– MooseX::Types::URI πŸ’–

okay bestie, so this is a page from the User Contributed Perl Documentation, and it's all about MooseX::Types::URI β€” URI related types and coercions for Moose. no cap. πŸ¦‹

✨ VERSION ✨

version 0.10 β€” yeah she's on 0.10, periodt.

🌸 SYNOPSIS 🌸

use MooseX::Types::URI qw(Uri FileUri DataUri);

that's it. that's the whole vibe check. three types, one use line. slay. πŸ’…

πŸ‘‘ DESCRIPTION πŸ‘‘

This package provides Moose types for fun with URIs. literally just that β€” it's giving "types, but make them URI-flavored". πŸŽ€


🌈 TYPES 🌈

The types are with "ucfirst" naming convention so that they don't mask the URI class. (yes bestie, that capital first letter is doing work β€” it keeps the type names from stepping on the actual URI class's toes. iconic behavior honestly.) πŸ’œ

🧚 Uri

Either URI or URI::WithBase.

Coerces from "Str" via new in URI.

Coerces from Path::Class::File and Path::Class::Dir via new in URI::file (but only if MooseX::Types::Path::Class is installed β€” so like, no Path::Class, no coercion, sorry bestie 😭).

Coerces from "ScalarRef" via new in URI::data.

Coerces from "HashRef" using URI::FromHash.

πŸ“ DataUri

A URI whose scheme is data.

Coerces from "Str" and "ScalarRef" via new in URI::data.

πŸ¦‹ FileUri

A URI::file class type.

Has coercions from "Str" (and optionally Path::Class::File and Path::Class::Dir) via new in URI::file.

It has slightly DWIMier types than the URI classes have due to implementation details, so the types should be more forgiving when ducktyping will work anyway (e.g. URI::WithBase does not inherit URI). πŸ”₯

ngl that last bit is the whole point β€” URI::WithBase doesn't inherit from URI, so these types are out here being way more chill about ducktyping than the raw classes would be.

🫢 TODO 🫢

  • Think about Path::Resource integration of some sort

(that's the entire TODO list. manifesting it, fr fr. ✨)


πŸ’Œ SUPPORT πŸ’Œ

Bugs may be submitted through the RT bug tracker <https://rt.cpan.org/Public/Dist/Display.html?Name=MooseX-Types-URI> (or bug-MooseX-Types-URI@rt.cpan.org <mailto:bug-MooseX-Types-URI@rt.cpan.org>).

There is also a mailing list available for users of this distribution, at <http://lists.perl.org/list/moose.html>.

There is also an irc channel available for users of this distribution, at "#moose" on "irc.perl.org" <irc://irc.perl.org/#moose>.

found a bug? tell the RT tracker. wanna vibe with the moose girlies? mailing list and #moose on irc.perl.org are right there. πŸŽ€

🌟 AUTHOR 🌟

Χ™Χ•Χ‘Χœ Χ§Χ•Χ’'מן (Yuval Kogman) <nothingmuch@woobling.org>

πŸ’– CONTRIBUTORS πŸ’–

  • Karen Etheridge <ether@cpan.org>
  • Florian Ragwitz <rafl@debian.org>
  • Olivier MenguΓ© <dolmen@cpan.org>
  • Daniel Pittman <daniel@rimspace.net>
  • MORIYA Masaki (gardejo) <moriya@ermitejo.com>
  • Shawn S Moore <sartak@gmail.com>

(the way the whole squad showed up for this one 😭🫢)


This software is copyright (c) 2008 by Χ™Χ•Χ‘Χœ Χ§Χ•Χ’'מן (Yuval Kogman).

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

free software, same terms as Perl 5 itself. iconic. no notes. πŸ’…

and that's the whole page bestie!! this doc ships as part of perl v5.40.1, dated 2025-04-27. go forth and coerce some URIs, you absolute main character. πŸ‘‘πŸŒˆπŸ’–

πŸ“¦ where this page comes from