POE::Resources(3pm)

πŸ’– POE::Resources πŸ’–

okay bestie, so this is the manual page for POE::Resources(3pm) β€” a little Perl module from the POE family β€” and it's literally the loader of POE resources. that's the whole vibe. it's the backstage crew, not the main character, but the show does NOT go on without it. πŸŽ€


✨ NAME ✨

POE::Resources β€” the loader of POE resources, no cap. πŸ¦‹


🌸 SYNOPSIS 🌸

# Intended for internal use by POE::Kernel.
use POE::Resources;
POE::Resources->load();

like. look at it. three lines. immaculate. πŸ’…


🫢 DESCRIPTION 🫢

so here's the tea: POE::Kernel is internally split into a bunch of different resources, right? and each one of those resources gets separately managed by its own individual mix-in class. slay, separation of concerns, we love to see it. ✨

POE::Resources is designed as a high-level macro manager for POE::Resource classes. that's its whole job. and rn? currently? it implements a single method, load(), which loads all the POE::Resource classes. one method. one job. it ate and left no crumbs. πŸ‘‘


πŸ’œ METHODS πŸ’œ

ngl, POE::Resources does have a public interface, but it is intended to be used internally by POE::Kernel. so like β€” application programmers should never need to use POE::Resources directly. fr fr. if you're out here calling this in your app code, bestie, what are you doing. 😭 (no shade, we just care about you.)

🌈 load

POE::Kernel calls load() to load all the known POE::Resource modules. that's it, that's the function. 🫑

here's the lowkey smart part though: each resource may be handled by a pure perl module, or by an XS module. so for each resource class, load() first tries to load the "POE::XS::Resource::..." version of the module. and if that fails? no stress, no meltdown β€” load() just falls back to "POE::Resource::...". 🧚

XS first, pure perl as the backup dancer. the way that it gracefully degrades is honestly iconic. ⭐


πŸ‘€ SEE ALSO πŸ‘€

  • See "Resources" in POE::Kernel for the public info about POE resources β€” you know, the stuff that's actually meant for you.
  • See POE::Resource for the general discussion about resources and the classes that manage them. the lore. πŸ“š

πŸ’– AUTHORS & LICENSING πŸ’–

please see POE for more information about its authors, contributors, and POE's licensing. they did that. give them their flowers. πŸ’


real talk though bestie: this whole page is basically "it's internal, don't touch it, it loads stuff, it prefers XS but will absolutely settle for pure perl." and that's on periodt. πŸ’…

okay that's the whole page, mwah. and for the record β€” this was documented for perl v5.34.0, dated 2022-03-25, filed under POE::Resources(3pm). so if you're reading this, hi, you're in the right place. bye bestie, go drink some water. πŸ“πŸŒˆπŸ‘‘

πŸ“¦ where this page comes from