smarty) ? $obj->smarty : $obj; if (isset($smarty->registered_plugins[$type][$name])) { throw new SmartyException("Plugin tag \"{$name}\" already registered"); } elseif (!is_callable($callback)) { throw new SmartyException("Plugin \"{$name}\" not callable"); } else { $smarty->registered_plugins[$type][$name] = array($callback, (bool) $cacheable, (array) $cache_attr); } return $obj; } }