| 68 | allocators::basic_alloc |
| 69 | > |
| 70 | class array : public |
| 71 | allocators::_item_alloc < D, A > |
| 72 | { |
| 73 | /*------ a dynamically allocated, contiguous array object */ |
| 74 | public : |
| 75 | |
| 76 | typedef D data_type ; |
| 77 | typedef A allocator ; |
| 78 | |
| 79 | typedef typename |
| 80 | allocator::size_type size_type ; |
| 81 | typedef typename |
| 82 | allocator::diff_type diff_type ; |
| 83 | |
| 84 | typedef __cont::array < |
| 85 | data_type, |
| 86 | allocator > self_type ; |
| 87 | |
| 88 | typedef __cont::write_array_iterator < |
| 89 | self_type > _write_it ; |
| 90 | typedef __cont::const_array_iterator < |
| 91 | self_type > _const_it ; |
| 92 | |
| 93 | typedef allocators::_item_alloc < |
| 94 | data_type, |
| 95 | allocator > obj_alloc ; |
| 96 | |
| 97 | private : |
| 98 | |
| 99 | enum {_hptr, _tptr, _lptr} ; |
| 100 | |
| 101 | containers:: |
| 102 | fixed_array<__write_ptr(data_type),+3> _ptrs ; |
| 103 | |
| 104 | private : |
| 105 | |
| 106 | /*------------------------------ helper - construct range */ |
| 107 | |
| 108 | __normal_call void_type ctor_iter ( |
| 109 | _write_it _head, |
| 110 | _write_it _tail |
| 111 | ) |
| 112 | { /* _def construct sequence */ |
| 113 | for ( ; _head != _tail ; ++_head) |
| 114 | { |
| 115 | self_type::construct(&*_head) ; |
| 116 | } |
| 117 | } |
| 118 | __normal_call void_type ctor_iter ( |
| 119 | _write_it _head, |
| 120 | _write_it _tend, |
| 121 | data_type const& _data |
| 122 | ) |
| 123 | { /* copy construct sequence */ |
| 124 | for ( ; _head != _tend ; ++_head) |
| 125 | { |
| 126 | self_type::construct(&*_head, |
| 127 | _data) ; |
nothing calls this directly
no outgoing calls
no test coverage detected