I can see you adding things but I can't see you taking them out.  Presumably, when it's full, if I add one it tramples on another, that'll be passed to destroy (which, of course, could be a "pop-callback" instead of a destructor).  This should be documented.