in reply to Package-specific Attribute Handling and Multiple Inheritence
I've been wrestling mentally with this same issue for improving Object::LocalVars. The best thing I've come up with it rewriting my attributes to use Attribute::Handlers, which provides the MODIFY_CODE_ATTRIBUTES subroutine and farms out the actual attributes found to other subroutines that registered themselves with Attribute::Handlers. This, of course, requires everyone to play nice and all use Attribute::Handlers as well.
I avoided Attribute::Handlers at first because of the complexity within it -- I wanted more direct control of the attribute handling process to be sure I understood what was happening. But for interoperability, I think it's the right way to go. However, Attribute::Handlers tries to do a lot of stuff in the CHECK phase by default, and that will break under mod_perl. I believe that Attribute::Handlers will allow one to force handling to be immediate in the BEGIN phase, which I what I intend to explore as an approach.
-xdg
Code written by xdg and posted on PerlMonks is public domain. It is provided as is with no warranties, express or implied, of any kind. Posted code may not have been tested. Use of posted code is at your own risk.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Package-specific Attribute Handling and Multiple Inheritence
by Thilosophy (Curate) on Sep 07, 2005 at 01:51 UTC | |
by xdg (Monsignor) on Sep 07, 2005 at 02:05 UTC |