Changes for version 0.052000 - 2025-11-21

  • Bug Fixes
    • The Hash `exists` check was checking definedness. It now properly tests slot existence. <https://github.com/tobyink/p5-sub-handlesvia/issues/20>
  • Test Suite
    • In Object::Pad tests, use the `field` keyword rather than deprecated `has` keyword. <https://github.com/tobyink/p5-sub-handlesvia/issues/17>
    • Include tests for interaction with MooX::Tag::TO_HASH. <https://github.com/tobyink/p5-sub-handlesvia/issues/14>
  • Other
    • Use Class::Method::Modifiers to wrap Moo `has`. <https://github.com/tobyink/p5-sub-handlesvia/issues/14>
    • Use Class::Method::Modifiers to wrap Moo `has`. <https://github.com/tobyink/p5-sub-handlesvia/issues/14>

Documentation

misc advanced documentation
comparing Sub::HandlesVia against similar modules
using Sub::HandlesVia with Class::Tiny
using Sub::HandlesVia with the class keyword
using Sub::HandlesVia with generic Perl classes
using Sub::HandlesVia with Mite
using Sub::HandlesVia with Moo
using Sub::HandlesVia with Moose
using Sub::HandlesVia with Mouse
using Sub::HandlesVia with Object::Pad

Modules

alternative handles_via implementation
looks at a Handler and generates a string of Perl code for it
declare delegations at compile-time
template for a method that can be delegated to
library of array-related methods
library of object-related methods
library of bool-related methods
library of code-related methods
library of counter-related methods
library of enum-related methods
library of hash-related methods
library of number-related methods
library of scalar-related methods
library of string-related methods
integration with OO frameworks for Sub::HandlesVia

Provides

in lib/Sub/HandlesVia/Handler.pm
in lib/Sub/HandlesVia/Handler.pm
in lib/Sub/HandlesVia/HandlerLibrary.pm
in lib/Sub/HandlesVia/Mite.pm
in lib/Sub/HandlesVia/Toolkit/Mite.pm
in lib/Sub/HandlesVia/Toolkit/Moo.pm
in lib/Sub/HandlesVia/Toolkit/Moose.pm
in lib/Sub/HandlesVia/Toolkit/Moose.pm
in lib/Sub/HandlesVia/Toolkit/Moose.pm
in lib/Sub/HandlesVia/Toolkit/Mouse.pm
in lib/Sub/HandlesVia/Toolkit/Mouse.pm
in lib/Sub/HandlesVia/Toolkit/Mouse.pm
in lib/Sub/HandlesVia/Toolkit/ObjectPad.pm
in lib/Sub/HandlesVia/Toolkit/Plain.pm