On Mon, May 19, 2008 at 2:24 PM, Earl Miles <merlin@logrus.com> wrote:
Darrel O'Pry wrote:
On Mon, May 19, 2008 at 12:46 PM, John Wilkins <drupal.user@albin.net<mailto:
drupal.user@albin.net>> wrote:
HOOK_theme() actually has 4 parameters that are essential for theme developers. Of course, HOOK_theme() is a special case since themes (and not just modules) can call that hook. (And, btw, themes can't call the corresponding HOOK_theme_registry_alter().)
Themes can all call any hook. This is not a special case. Really you're going to have to explain, "themes can't call the corresponding HOOK_theme_registry_alter()". Why not?
By 'call' he meant 'implement'.
Themes get a special HOOK_theme() that is exactly like the module version, but they do not get a corresponding alter.
That makes more sense. I'm a proponent of ignoring that special case for now since it's doing it's own caching and just implementing a caching version of module_invoke_all.... although I don't think we need to add the logic for caching in module_invoke_all itself since it is a called my many other modules, just extend what we have with a wrapper that implements the caching.