28 using iterator =
typename std::vector<Base*>::iterator;
29 using const_iterator =
typename std::vector<Base*>::const_iterator;
30 using reverse_iterator =
typename std::vector<Base*>::reverse_iterator;
31 using const_reverse_iterator =
typename std::vector<Base*>::const_reverse_iterator;
45 inline size_t size()
const {
49 inline bool empty()
const {
53 inline void reserve(
size_t n) {
57 inline void push_back(Base* x) {
61 inline Base* operator[](
size_t n)
const {
65 inline Base*& operator[](
size_t n) {
69 inline iterator begin() {
73 inline const_iterator begin()
const {
77 inline iterator end() {
81 inline const_iterator end()
const {
85 inline reverse_iterator rbegin() {
89 inline const_reverse_iterator rbegin()
const {
93 inline reverse_iterator rend() {
97 inline const_reverse_iterator rend()
const {
101 inline std::vector<Base*> release() {
102 std::vector<Base*>
v2;
108 for (
size_t i = 0;
i < v.size();
i++) {
248 using iterator =
typename std::map<Key, Value*>::iterator;
249 using const_iterator =
typename std::map<Key, Value*>::const_iterator;
250 using reverse_iterator =
typename std::map<Key, Value*>::reverse_iterator;
251 using const_reverse_iterator =
typename std::map<Key, Value*>::const_reverse_iterator;
252 std::map<Key, Value*> m;
254 inline size_t size()
const {
258 inline bool empty()
const {
262 inline iterator begin() {
266 inline const_iterator begin()
const {
270 inline iterator end() {
274 inline const_iterator end()
const {
278 inline reverse_iterator rbegin() {
282 inline const_reverse_iterator rbegin()
const {
286 inline reverse_iterator rend() {
290 inline const_reverse_iterator rend()
const {
298 std::map<Key, Value*> release() {
299 std::map<Key, Value*>
m2;
305 typename std::map<Key, Value*>::const_iterator
it;
306 for (
it = m.begin();
it != m.end(); ++
it) {