"Peter Dimov" <[EMAIL PROTECTED]> writes: > From: "David Abrahams" <[EMAIL PROTECTED]> > > [get_deleter] > >> I think that considering the alternatives require: >> >> 1. Periodic map sweeps (we might as well be doing GC ;->), or >> >> 2. Solving the constructor forwarding problem for tacking on >> additional data to the pointed-to class >> >> IMO it's worth giving serious consideration to deleter >> introspection. > > Looks like I have to apply my mad "diligent reader" skills to the above. > <snip> > > Correct?
Yep, you got mad skills. > Now the interface questions. > > Q: Why a free function? A: a member would require the p.template > get_deleter<D>() syntax when p is dependent on a template parameter. That's one answer. There's also p.get_deleter(type<D>). Either one is slightly ugly. But mostly I suggested a free function because it was what came to mind. > Q: Why use a generic 'get_deleter' name for the free function? A: ??? Heh. I suggest that it /not/ be intended for invocation via Koenig Lookup, so the name would be OK. There is another option, of course: make it a class template, like boost::python::extract. Since introspection is a two-phase process anyway, maybe that's better. -- David Abrahams [EMAIL PROTECTED] * http://www.boost-consulting.com Boost support, enhancements, training, and commercial distribution _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost