I'm a big fan of coupling TT with things like Class::DBI, because I really like being able to pass objects into templates and having everything just work.
However, we do a lot of work with third parties, and sometimes it's a little scary passing them objects which they could conceivably do the wrong thing with. (e.g. with Class::DBI you could fairly easily start modifying values in the database). So what I'd really like is some sort of 'interface' object that could be passed into the template instead of the 'real' object, which only has a subset of the methods available. And I'd ideally like to be able to declare what things are in this interface within the class itself, rather than having to write a different class each time which just delegated. And, ideally I'd be able to have multiple such interfaces in any given class. Now, it probably wouldn't be that hard to write such a thing, but I thought I'd check first in case someone has already written something which does all this, and more. Does such a thing exist? Tony
