in reply to Re: Class::Std and run-time loading.
in thread Class::Std and run-time loading.
That sort of "bug" is trivial to work around. Move the contents of the CHECK block into a named subroutine and then have the CHECK block call it. This allows compile-time loading of the module to still work as planned and allows runtime loading to manually compensate. You'd just call the new named function after loading your module.
Before
package Bad::Module; CHECK { ... # Lots of code } package Your::Code; require Bad::Module; # Error! Too late for CHECK.
After
package Bad::Module; CHECK { STUFF_THAT_NEEDS_DOING(); } sub STUFF_THAT_NEEDS_DOING { ... # Lots of code } package Your::Code; require Bad::Module; ... # All your code Bad::Module::STUFF_THAT_NEEDS_DOING();
⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Class::Std and run-time loading.
by Aristotle (Chancellor) on Jan 05, 2006 at 14:47 UTC | |
by diotalevi (Canon) on Jan 05, 2006 at 16:34 UTC |