Sub::Ha...mparison(3)

πŸ’… Sub::HandlesVia::Manual::Comparison πŸ’…

okay bestie, you've landed on Sub::HandlesVia::Manual::Comparison(3) and honestly? iconic page. this is where we line Sub::HandlesVia up next to the other girlies β€” Data::Perl, Moose native traits, and MouseX::NativeTraits β€” and do a full vibe check on who's got what. no gatekeeping here, we're going through every single method. 🫢


πŸ’– NAME πŸ’–

Sub::HandlesVia::Manual::Comparison β€” the page that compares Sub::HandlesVia against similar modules. that's it, that's the name, slay.

πŸŽ€ MANUAL πŸŽ€

so the table situation compares Sub::HandlesVia with Data::Perl, Moose native traits, and MouseX::NativeTraits. below, every row got turned into a bullet: the method name first, then which modules bring it to the function. the four columns you'd see in the original table are SubHV (that's Sub::HandlesVia), DataP (Data::Perl), Moose, and Mouse. if a name isn't listed for a method, that module simply doesn't ship it. fr fr, nothing got left out. πŸ’–


πŸ“ Array πŸ“

  • all β€” SubHV, DataP
  • all_true β€” SubHV
  • any β€” SubHV, Mouse
  • apply β€” SubHV, Mouse
  • clear β€” SubHV, DataP, Moose, Mouse
  • count β€” SubHV, DataP, Moose, Mouse
  • delete β€” SubHV, DataP, Moose, Mouse
  • elements β€” SubHV, DataP, Moose, Mouse
  • fetch β€” Mouse (and over there it's an alias for get)
  • first β€” SubHV, DataP, Moose, Mouse
  • first_index β€” SubHV, DataP, Moose
  • flatten β€” SubHV, DataP
  • flatten_deep β€” SubHV, DataP
  • for_each β€” SubHV, Mouse
  • for_each2 β€” SubHV
  • for_each_pair β€” SubHV, Mouse
  • get β€” SubHV, DataP, Moose, Mouse
  • grep β€” SubHV, DataP, Moose, Mouse
  • head β€” SubHV, DataP
  • indexed β€” SubHV
  • insert β€” SubHV, DataP, Moose, Mouse
  • is_empty β€” SubHV, DataP, Moose, Mouse
  • join β€” SubHV, DataP, Moose, Mouse
  • map β€” SubHV, DataP, Moose, Mouse
  • max β€” SubHV
  • maxstr β€” SubHV
  • min β€” SubHV
  • minstr β€” SubHV
  • natatime β€” SubHV, DataP, Moose
  • none β€” SubHV
  • not_all_true β€” SubHV
  • pairfirst β€” SubHV
  • pairgrep β€” SubHV
  • pairkeys β€” SubHV
  • pairmap β€” SubHV
  • pairs β€” SubHV
  • peek β€” SubHV
  • peekend β€” SubHV
  • pairvalues β€” SubHV
  • pick_random β€” SubHV
  • pop β€” SubHV, DataP, Moose, Mouse
  • print β€” SubHV, DataP
  • product β€” SubHV
  • push β€” SubHV, DataP, Moose, Mouse
  • reduce β€” SubHV, DataP, Moose, Mouse
  • reductions β€” SubHV
  • remove β€” Mouse (and over there it's an alias for delete)
  • reset β€” SubHV
  • reverse β€” SubHV, DataP
  • sample β€” SubHV
  • set β€” SubHV, DataP, Moose, Mouse
  • shallow_clone β€” SubHV, DataP, Moose
  • shift β€” SubHV, DataP, Moose, Mouse
  • shuffle β€” SubHV, DataP, Moose, Mouse
  • shuffle_in_place β€” SubHV
  • sort β€” SubHV, DataP, Moose, Mouse
  • sort_by β€” Mouse, where it goes by the name sort
  • sort_in_place β€” SubHV, DataP, Moose, Mouse
  • sort_in_place_by β€” Mouse, where it goes by the name sort_in_place
  • splice β€” SubHV, DataP, Moose, Mouse
  • store β€” Mouse (and over there it's an alias for set)
  • sum β€” SubHV
  • tail β€” SubHV, DataP
  • uniq β€” SubHV, DataP, Moose, Mouse
  • uniq_in_place β€” SubHV
  • uniqnum β€” SubHV
  • uniqnum_in_place β€” SubHV
  • uniqstr β€” SubHV
  • uniqstr_in_place β€” SubHV
  • unshift β€” SubHV, DataP, Moose, Mouse

🌸 Bool 🌸

  • not β€” SubHV, DataP, Moose, Mouse
  • reset β€” SubHV
  • set β€” SubHV, DataP, Moose, Mouse
  • toggle β€” SubHV, DataP, Moose, Mouse
  • unset β€” SubHV, DataP, Moose, Mouse

πŸ¦‹ Code πŸ¦‹

  • execute β€” SubHV, DataP, Moose, Mouse
  • execute_list β€” SubHV
  • execute_method β€” SubHV, Moose, Mouse
  • execute_method_list β€” SubHV
  • execute_method_scalar β€” SubHV
  • execute_method_void β€” SubHV
  • execute_scalar β€” SubHV
  • execute_void β€” SubHV

πŸ”’ Counter πŸ”’

  • dec β€” SubHV, DataP, Moose, Mouse
  • inc β€” SubHV, DataP, Moose, Mouse
  • reset β€” SubHV, DataP, Moose, Mouse
  • set β€” SubHV, Moose, Mouse

πŸŽ€ Hash πŸŽ€

  • accessor β€” SubHV, DataP, Moose, Mouse
  • all β€” SubHV, DataP
  • clear β€” SubHV, DataP, Moose, Mouse
  • count β€” SubHV, DataP, Moose, Mouse
  • defined β€” SubHV, DataP, Moose, Mouse
  • delete β€” SubHV, DataP, Moose, Mouse
  • delete_where β€” SubHV
  • elements β€” SubHV, DataP, Moose, Mouse
  • exists β€” SubHV, DataP, Moose, Mouse
  • fetch β€” Mouse (and over there it's an alias for get)
  • for_each_key β€” SubHV, Mouse
  • for_each_pair β€” SubHV, Mouse
  • for_each_value β€” SubHV, Mouse
  • get β€” SubHV, DataP, Moose, Mouse
  • is_empty β€” SubHV, DataP, Moose, Mouse
  • keys β€” SubHV, DataP, Moose, Mouse
  • kv β€” SubHV, DataP, Moose, Mouse
  • reset β€” SubHV
  • set β€” SubHV, DataP, Moose, Mouse
  • shallow_clone β€” SubHV, DataP, Moose
  • sorted_keys β€” SubHV, Mouse
  • store β€” Mouse (and over there it's an alias for set)
  • values β€” SubHV, DataP, Moose, Mouse

⭐ Number ⭐

  • abs β€” SubHV, DataP, Moose, Mouse
  • add β€” SubHV, DataP, Moose, Mouse
  • ceil β€” SubHV
  • cmp β€” SubHV
  • div β€” SubHV, DataP, Moose, Mouse
  • eq β€” SubHV
  • floor β€” SubHV
  • ge β€” SubHV
  • get β€” SubHV
  • gt β€” SubHV
  • le β€” SubHV
  • lt β€” SubHV
  • mod β€” SubHV, DataP, Moose, Mouse
  • mul β€” SubHV, DataP, Moose, Mouse
  • ne β€” SubHV
  • set β€” SubHV, Moose
  • sub β€” SubHV, DataP, Moose, Mouse

🧚 Scalar 🧚

  • get β€” SubHV
  • make_getter β€” SubHV
  • make_setter β€” SubHV
  • scalar_reference β€” SubHV
  • set β€” SubHV
  • stringify β€” SubHV

πŸ’œ String πŸ’œ

  • append β€” SubHV, DataP, Moose, Mouse
  • chomp β€” SubHV, DataP, Moose, Mouse
  • chop β€” SubHV, DataP, Moose, Mouse
  • clear β€” SubHV, DataP, Moose, Mouse
  • cmp β€” SubHV
  • cmpi β€” SubHV
  • contains β€” SubHV
  • contains_i β€” SubHV
  • ends_with β€” SubHV
  • ends_with_i β€” SubHV
  • eq β€” SubHV
  • eqi β€” SubHV
  • fc β€” SubHV
  • ge β€” SubHV
  • gei β€” SubHV
  • get β€” SubHV
  • gt β€” SubHV
  • gti β€” SubHV
  • inc β€” SubHV, DataP, Moose, Mouse
  • lc β€” SubHV
  • le β€” SubHV
  • lei β€” SubHV
  • length β€” SubHV, DataP, Moose, Mouse
  • lt β€” SubHV
  • lti β€” SubHV
  • match β€” SubHV, DataP, Moose, Mouse
  • match_i β€” SubHV
  • ne β€” SubHV
  • nei β€” SubHV
  • prepend β€” SubHV, DataP, Moose, Mouse
  • replace β€” SubHV, DataP, Moose, Mouse
  • replace_globally β€” SubHV, Mouse
  • reset β€” SubHV
  • set β€” SubHV
  • starts_with β€” SubHV
  • starts_with_i β€” SubHV
  • substr β€” SubHV, DataP, Moose, Mouse
  • trim β€” SubHV
  • uc β€” SubHV

πŸ’€ BUGS πŸ’€

spotted a bug? don't just suffer in silence, bestie β€” please report any bugs to <https://github.com/tobyink/p5-sub-handlesvia/issues>. πŸ›βœ¨

🌈 SEE ALSO 🌈

Sub::HandlesVia. obviously. go read it. πŸ’…

πŸ‘‘ AUTHOR πŸ‘‘

Toby Inkster <tobyink@cpan.org>. king behaviour, honestly.

This software is copyright (c) 2022 by Toby Inkster.

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

πŸ™ˆ DISCLAIMER OF WARRANTIES πŸ™ˆ

THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.

and that's the whole page, babe. this one's from perl v5.42.0, dated 2026-02-11, and it's giving Sub::Ha...mparison(3) energy from start to finish. go forth and compare responsibly πŸ’‹πŸŽ€βœ¨

πŸ“¦ where this page comes from