So, I've got the basic Template Toolkit and Axkit language handers working again. It's in svn if you want to take a look. Still no dealing with caching, still no advanced configuration options.
So I've hit the same problem I had last time. Template Toolkit and AxKit basically have incompatible error handling. They both use objects to do their error handling and they both are naive enough to assume that any object thrown is one of their own type. For example, AxKit:
sub prep_exception { my $err = shift; if (ref($err)) { return $err; } ...Um...that's not good. if you return a Template::Exception object things are going to go very wrong (because there's no throw method for a start). Even worse is Template::Service:
# there shouldn't ever be a non-exception object received at this # point... unless a module like CGI::Carp messes around with the # DIE handler. return undef unless (ref $$error);...what you mean like AxKit does. Botheration.
I'm going to probably have to introduce some thunking, which probably means patching either AxKit or Template Toolkit, or probably both. Darn!
-Dom
Re:Exception::Class
2shortplanks on 2004-08-15T14:10:13
See also, EO::Error.