Devel:...::Find(3pm)

πŸ’– Devel::...::Find(3pm) πŸ’–

okay bestie, so this is a page from the User Contributed Perl Documentation and the module is called "Devel::MAT::Tool::Find" β€” yes the quotes are part of it, it's giving quirky but we move. 🫢

✨ NAME ✨

"Devel::MAT::Tool::Find" β€” list SVs matching given criteria πŸ’…

🌸 DESCRIPTION 🌸

This Devel::MAT tool gives you a whole command that searches for SVs matching whatever criteria you throw at it. That's it, that's the vibe. πŸ”


πŸ‘‘ COMMANDS πŸ‘‘

πŸŽ€ find

pmat> find io
IO()=IO::File at 0x55a7e4d88760: ifileno=1 ofileno=1
...

It prints a list of all the SVs that match the filter criteria you gave it. literally all of them. πŸ’–

Takes the following named options:

  • --count, -C β€” just counts the matching SVs and prints the total, no list, no drama, just the number ✨

πŸ¦‹ FILTERS πŸ¦‹

πŸ“ num

pmat> find num
SCALAR(UV) at 0x555555a1e9c0: 5
SCALAR(UV) at 0x555555c4f1b0: 2
SCALAR(UV) at 0x555555aa0dc0: 18446744073709551615

Prints every scalar SV that has a numerical value πŸ‘‘ and if you want, you can filter for just one exact value.

Takes the following named options:

  • --nv, --iv, --uv β€” find only numerical SVs of the given types. if you pass none of them, any numerical SV gets found. easy. πŸ’œ

🧚 pv

pmat> find pv "boot"
SCALAR(PV) at 0x556e4737d968: "boot_Devel::MAT::Dumper"
SCALAR(PV) at 0x556e4733a160: "boot_Cwd"
...

Prints every scalar SV whose PV (that's the string value, iykyk) matches the pattern you supplied ✨. Normally the pattern is treated as a substring match, but --eq and --regexp can switch that up.

Takes the following named options:

  • --eq β€” treat the pattern as a full string equality match instead of substring. all or nothing, periodt πŸ’…
  • --regexp, -r β€” treat the pattern as a regular expression instead of a literal substring. regex girlies rise 🌈
  • --ignorecase, -i β€” match case-insensitively, and that works for any of substring, equality or regexp match 🌸

πŸ’œ io

pmat> find io
IO()=IO::File at 0x55a7e4d88760: ifileno=1 ofileno=1
...

pmat> find io -f 2
IO()=IO::File at 0x55582b87f430: ifileno=2 ofileno=2

Searches for IO handles πŸ”₯

Takes the following named options:

  • --fileno, -f INT β€” match only the IO handles associated with the given filenumber. one number, one handle, iconic πŸŽ€

🌈 blessed

pmat> find blessed Config
HASH(26)=Config at 0x55bd56c28930

Searches for SVs blessed into the given package name πŸ‘‘

⭐ lexical

pmat> find lexical $x
UNDEF() at 0x56426e97c8b0: $x at depth 1 of CODE(PP) at 0x56426e97c5e0
...

Searches for SVs that are lexical variables of the given name 🫢

πŸ’€ struct

pmat> find struct Module::Name/Type
C_STRUCT(Module::Name/Type) at 0x55e0c3017bf0: Module::Name/Type
...

Searches for SVs that are C structures of the given type name 🧚

πŸ™ˆ magic

okay so this heading is just... here. that's it. no options, no description, no notes. the manpage said magic and then moved straight on to AUTHOR. I'm not gonna invent lore for it, bestie β€” we report what's on the page and nothing more 😭

πŸ’– AUTHOR πŸ’–

Paul Evans <leonerd@leonerd.org.uk> 🫢


and that's a wrap, bestie πŸ’… this was documented for perl v5.42.3 and dated 2026-08-21 β€” go forth and find all the SVs, you absolute icon πŸ‘‘βœ¨

πŸ“¦ where this page comes from