CxxUtils::pointer_list< NELT > Node1 CxxUtils::pointer_list < NELT > + pointer_list() + begin() + end() + erase() Node2 CxxUtils::pointer_list_base # m_size + pointer_list_base() + push_back() + size() + clear() + empty() # firstblock() # nextblock() # getblock() Node2->Node1 Node3 value_type< type, the _value > + value Node3->Node2 #m_insert Node4 CxxUtils::pointer_list _base::allocator - m_nelt - m_nblock - m_nthis - m_nchunks + allocator() + ~allocator() + allocate() + nelt() + nchunks() + at_end() - refill() Node4->Node2 #m_pool Node5 CxxUtils::pointer_list _base::allocator::chunk Node5->Node4 -m_chunks Node5->Node5 +m_next Node6 CxxUtils::pointer_list _base::list_block + m_data + size() Node6->Node2 #m_head Node6->Node5 +m_blocks Node7 long Node7->Node4 -m_end_offs -m_end_mask