◆ vector() [1/2]
2284 : original(std::move(other)) {
2285 }
◆ vector() [2/2]
template<bool INTERNAL_SAFE>
2287 : original(std::move(other)) {
2288 }
◆ AssertIndexInBounds()
2261 {
2262#if defined(DUCKDB_DEBUG_NO_SAFETY) || defined(DUCKDB_CLANG_TIDY)
2263 return;
2264#else
2265 if (DUCKDB_UNLIKELY(index >= size)) {
2266 throw InternalException("Attempted to access index %ld within vector of size %ld", index, size);
2267 }
2268#endif
2269 }
◆ clear()
2277 {
2278 original::clear();
2279 }
◆ get() [1/2]
template<bool INTERNAL_SAFE = false>
2291 {
2292 if (MemorySafety<INTERNAL_SAFE>::ENABLED) {
2293 AssertIndexInBounds(__n, original::size());
2294 }
2295 return original::operator[](__n);
2296 }
◆ get() [2/2]
template<bool INTERNAL_SAFE = false>
2299 {
2300 if (MemorySafety<INTERNAL_SAFE>::ENABLED) {
2301 AssertIndexInBounds(__n, original::size());
2302 }
2303 return original::operator[](__n);
2304 }
◆ operator[]() [1/2]
2306 {
2307 return get<SAFE>(__n);
2308 }
◆ operator[]() [2/2]
2309 {
2310 return get<SAFE>(__n);
2311 }
◆ front() [1/2]
2313 {
2314 return get<SAFE>(0);
2315 }
◆ front() [2/2]
2317 {
2318 return get<SAFE>(0);
2319 }
◆ back() [1/2]
2321 {
2322 if (MemorySafety<SAFE>::ENABLED && original::empty()) {
2323 throw InternalException("'back' called on an empty vector!");
2324 }
2325 return get<SAFE>(original::size() - 1);
2326 }
◆ back() [2/2]
2328 {
2329 if (MemorySafety<SAFE>::ENABLED && original::empty()) {
2330 throw InternalException("'back' called on an empty vector!");
2331 }
2332 return get<SAFE>(original::size() - 1);
2333 }
◆ unsafe_erase_at()
2335 {
2336 original::erase(original::begin() + static_cast<typename original::iterator::difference_type>(idx));
2337 }
◆ erase_at()
2339 {
2340 if (MemorySafety<SAFE>::ENABLED && idx > original::size()) {
2341 throw InternalException("Can't remove offset %d from vector of size %d", idx, original::size());
2342 }
2343 unsafe_erase_at(idx);
2344 }
The documentation for this class was generated from the following file: