Transform Buffer into a derivable class; remove (destroy) callback
This patch transforms Buffer
into a derivable class, simplifying the implementation of more elaborated storage options like those using std::shared_ptr
. It should not imply a performance degradation since the virtual table access for the destructor should be equivalent of the now-obsolete Callback
member.