/Users/deen/code/yugabyte-db/src/yb/rocksdb/util/autovector.h
Line | Count | Source (jump to first uncovered line) |
1 | | // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. |
2 | | // This source code is licensed under the BSD-style license found in the |
3 | | // LICENSE file in the root directory of this source tree. An additional grant |
4 | | // of patent rights can be found in the PATENTS file in the same directory. |
5 | | // |
6 | | // The following only applies to changes made to this file as part of YugaByte development. |
7 | | // |
8 | | // Portions Copyright (c) YugaByte, Inc. |
9 | | // |
10 | | // Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except |
11 | | // in compliance with the License. You may obtain a copy of the License at |
12 | | // |
13 | | // http://www.apache.org/licenses/LICENSE-2.0 |
14 | | // |
15 | | // Unless required by applicable law or agreed to in writing, software distributed under the License |
16 | | // is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express |
17 | | // or implied. See the License for the specific language governing permissions and limitations |
18 | | // under the License. |
19 | | // |
20 | | #pragma once |
21 | | |
22 | | #include <algorithm> |
23 | | #include <cassert> |
24 | | #include <vector> |
25 | | |
26 | | namespace rocksdb { |
27 | | |
28 | | #ifdef ROCKSDB_LITE |
29 | | template <class T, size_t kSize = 8> |
30 | | class autovector : public std::vector<T> {}; |
31 | | #else |
32 | | // A vector that leverages pre-allocated stack-based array to achieve better |
33 | | // performance for array with small amount of items. |
34 | | // |
35 | | // The interface resembles that of vector, but with less features since we aim |
36 | | // to solve the problem that we have in hand, rather than implementing a |
37 | | // full-fledged generic container. |
38 | | // |
39 | | // Currently we don't support: |
40 | | // * reserve()/shrink_to_fit() |
41 | | // If used correctly, in most cases, people should not touch the |
42 | | // underlying vector at all. |
43 | | // * random insert()/erase(), please only use push_back()/pop_back(). |
44 | | // * No move/swap operations. Each autovector instance has a |
45 | | // stack-allocated array and if we want support move/swap operations, we |
46 | | // need to copy the arrays other than just swapping the pointers. In this |
47 | | // case we'll just explicitly forbid these operations since they may |
48 | | // lead users to make false assumption by thinking they are inexpensive |
49 | | // operations. |
50 | | // |
51 | | // Naming style of public methods almost follows that of the STL's. |
52 | | template <class T, size_t kSize = 8> |
53 | | class autovector { |
54 | | public: |
55 | | // General STL-style container member types. |
56 | | typedef T value_type; |
57 | | typedef typename std::vector<T>::difference_type difference_type; |
58 | | typedef typename std::vector<T>::size_type size_type; |
59 | | typedef value_type& reference; |
60 | | typedef const value_type& const_reference; |
61 | | typedef value_type* pointer; |
62 | | typedef const value_type* const_pointer; |
63 | | |
64 | | // This class is the base for regular/const iterator |
65 | | template <class TAutoVector, class TValueType> |
66 | | class iterator_impl { |
67 | | public: |
68 | | // -- iterator traits |
69 | | typedef iterator_impl<TAutoVector, TValueType> self_type; |
70 | | typedef TValueType value_type; |
71 | | typedef TValueType& reference; |
72 | | typedef TValueType* pointer; |
73 | | typedef typename TAutoVector::difference_type difference_type; |
74 | | typedef std::random_access_iterator_tag iterator_category; |
75 | | |
76 | | iterator_impl(TAutoVector* vect, size_t index) |
77 | 664M | : vect_(vect), index_(index) {} rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::SuperVersion*, 8ul>, rocksdb::SuperVersion*>::iterator_impl(rocksdb::autovector<rocksdb::SuperVersion*, 8ul>*, unsigned long) Line | Count | Source | 77 | 6.65M | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 8ul>, rocksdb::log::Writer*>::iterator_impl(rocksdb::autovector<rocksdb::log::Writer*, 8ul>*, unsigned long) Line | Count | Source | 77 | 4.50M | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul>, rocksdb::MemTable*>::iterator_impl(rocksdb::autovector<rocksdb::MemTable*, 8ul>*, unsigned long) Line | Count | Source | 77 | 66.0M | : vect_(vect), index_(index) {} |
rocksdb::autovector<void*, 8ul>::iterator_impl<rocksdb::autovector<void*, 8ul>, void*>::iterator_impl(rocksdb::autovector<void*, 8ul>*, unsigned long) Line | Count | Source | 77 | 2.48M | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>, rocksdb::ColumnFamilyData*>::iterator_impl(rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>*, unsigned long) Line | Count | Source | 77 | 351k | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::TableReader*, 16ul>::iterator_impl<rocksdb::autovector<rocksdb::TableReader*, 16ul>, rocksdb::TableReader*>::iterator_impl(rocksdb::autovector<rocksdb::TableReader*, 16ul>*, unsigned long) Line | Count | Source | 77 | 2 | : vect_(vect), index_(index) {} |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::iterator_impl<rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul> const, std::__1::pair<int, rocksdb::FileMetaData*> const>::iterator_impl(rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul> const*, unsigned long) Line | Count | Source | 77 | 28 | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 1ul>, rocksdb::log::Writer*>::iterator_impl(rocksdb::autovector<rocksdb::log::Writer*, 1ul>*, unsigned long) Line | Count | Source | 77 | 12 | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>, rocksdb::WriteThread::Writer*>::iterator_impl(rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>*, unsigned long) Line | Count | Source | 77 | 112M | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul> const, rocksdb::MemTable* const>::iterator_impl(rocksdb::autovector<rocksdb::MemTable*, 8ul> const*, unsigned long) Line | Count | Source | 77 | 57.1k | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>, rocksdb::LevelFilesBrief>::iterator_impl(rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>*, unsigned long) Line | Count | Source | 77 | 304 | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>, rocksdb::IteratorWrapper>::iterator_impl(rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>*, unsigned long) Line | Count | Source | 77 | 206M | : vect_(vect), index_(index) {} |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul> const, rocksdb::IteratorWrapper const>::iterator_impl(rocksdb::autovector<rocksdb::IteratorWrapper, 4ul> const*, unsigned long) Line | Count | Source | 77 | 473k | : vect_(vect), index_(index) {} |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>, rocksdb::(anonymous namespace)::LRUHandle*>::iterator_impl(rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>*, unsigned long) Line | Count | Source | 77 | 263M | : vect_(vect), index_(index) {} |
Unexecuted instantiation: cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul> const, rocksdb::(anonymous namespace)::LRUHandle* const>::iterator_impl(rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul> const*, unsigned long) rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>, rocksdb::LogBuffer::BufferedLog*>::iterator_impl(rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>*, unsigned long) Line | Count | Source | 77 | 483k | : vect_(vect), index_(index) {} |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul>, unsigned int>::iterator_impl(rocksdb::autovector<unsigned int, 8ul>*, unsigned long) Line | Count | Source | 77 | 1.27M | : vect_(vect), index_(index) {} |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul> const, unsigned int const>::iterator_impl(rocksdb::autovector<unsigned int, 8ul> const*, unsigned long) Line | Count | Source | 77 | 4.12k | : vect_(vect), index_(index) {} |
|
78 | | iterator_impl(const iterator_impl&) = default; |
79 | 664M | ~iterator_impl() {} rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::SuperVersion*, 8ul>, rocksdb::SuperVersion*>::~iterator_impl() Line | Count | Source | 79 | 6.65M | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 8ul>, rocksdb::log::Writer*>::~iterator_impl() Line | Count | Source | 79 | 4.50M | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul>, rocksdb::MemTable*>::~iterator_impl() Line | Count | Source | 79 | 66.0M | ~iterator_impl() {} |
rocksdb::autovector<void*, 8ul>::iterator_impl<rocksdb::autovector<void*, 8ul>, void*>::~iterator_impl() Line | Count | Source | 79 | 2.48M | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>, rocksdb::ColumnFamilyData*>::~iterator_impl() Line | Count | Source | 79 | 351k | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::TableReader*, 16ul>::iterator_impl<rocksdb::autovector<rocksdb::TableReader*, 16ul>, rocksdb::TableReader*>::~iterator_impl() Line | Count | Source | 79 | 2 | ~iterator_impl() {} |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::iterator_impl<rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul> const, std::__1::pair<int, rocksdb::FileMetaData*> const>::~iterator_impl() Line | Count | Source | 79 | 28 | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 1ul>, rocksdb::log::Writer*>::~iterator_impl() Line | Count | Source | 79 | 12 | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>, rocksdb::WriteThread::Writer*>::~iterator_impl() Line | Count | Source | 79 | 112M | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul> const, rocksdb::MemTable* const>::~iterator_impl() Line | Count | Source | 79 | 57.1k | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>, rocksdb::LevelFilesBrief>::~iterator_impl() Line | Count | Source | 79 | 304 | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>, rocksdb::IteratorWrapper>::~iterator_impl() Line | Count | Source | 79 | 207M | ~iterator_impl() {} |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul> const, rocksdb::IteratorWrapper const>::~iterator_impl() Line | Count | Source | 79 | 473k | ~iterator_impl() {} |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>, rocksdb::(anonymous namespace)::LRUHandle*>::~iterator_impl() Line | Count | Source | 79 | 263M | ~iterator_impl() {} |
Unexecuted instantiation: cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul> const, rocksdb::(anonymous namespace)::LRUHandle* const>::~iterator_impl() rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>, rocksdb::LogBuffer::BufferedLog*>::~iterator_impl() Line | Count | Source | 79 | 483k | ~iterator_impl() {} |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul>, unsigned int>::~iterator_impl() Line | Count | Source | 79 | 1.27M | ~iterator_impl() {} |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul> const, unsigned int const>::~iterator_impl() Line | Count | Source | 79 | 4.14k | ~iterator_impl() {} |
|
80 | | iterator_impl& operator=(const iterator_impl&) = default; |
81 | | |
82 | | // -- Advancement |
83 | | // ++iterator |
84 | 183M | self_type& operator++() { |
85 | 183M | ++index_; |
86 | 183M | return *this; |
87 | 183M | } rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::SuperVersion*, 8ul>, rocksdb::SuperVersion*>::operator++() Line | Count | Source | 84 | 84.7k | self_type& operator++() { | 85 | 84.7k | ++index_; | 86 | 84.7k | return *this; | 87 | 84.7k | } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 8ul>, rocksdb::log::Writer*>::operator++() Line | Count | Source | 84 | 20.1k | self_type& operator++() { | 85 | 20.1k | ++index_; | 86 | 20.1k | return *this; | 87 | 20.1k | } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul>, rocksdb::MemTable*>::operator++() Line | Count | Source | 84 | 29.0k | self_type& operator++() { | 85 | 29.0k | ++index_; | 86 | 29.0k | return *this; | 87 | 29.0k | } |
rocksdb::autovector<void*, 8ul>::iterator_impl<rocksdb::autovector<void*, 8ul>, void*>::operator++() Line | Count | Source | 84 | 155k | self_type& operator++() { | 85 | 155k | ++index_; | 86 | 155k | return *this; | 87 | 155k | } |
Unexecuted instantiation: rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>, rocksdb::ColumnFamilyData*>::operator++() rocksdb::autovector<rocksdb::TableReader*, 16ul>::iterator_impl<rocksdb::autovector<rocksdb::TableReader*, 16ul>, rocksdb::TableReader*>::operator++() Line | Count | Source | 84 | 6 | self_type& operator++() { | 85 | 6 | ++index_; | 86 | 6 | return *this; | 87 | 6 | } |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::iterator_impl<rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul> const, std::__1::pair<int, rocksdb::FileMetaData*> const>::operator++() Line | Count | Source | 84 | 14 | self_type& operator++() { | 85 | 14 | ++index_; | 86 | 14 | return *this; | 87 | 14 | } |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 1ul>, rocksdb::log::Writer*>::operator++() Line | Count | Source | 84 | 8 | self_type& operator++() { | 85 | 8 | ++index_; | 86 | 8 | return *this; | 87 | 8 | } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>, rocksdb::WriteThread::Writer*>::operator++() Line | Count | Source | 84 | 59.9M | self_type& operator++() { | 85 | 59.9M | ++index_; | 86 | 59.9M | return *this; | 87 | 59.9M | } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul> const, rocksdb::MemTable* const>::operator++() Line | Count | Source | 84 | 29.0k | self_type& operator++() { | 85 | 29.0k | ++index_; | 86 | 29.0k | return *this; | 87 | 29.0k | } |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>, rocksdb::LevelFilesBrief>::operator++() Line | Count | Source | 84 | 88 | self_type& operator++() { | 85 | 88 | ++index_; | 86 | 88 | return *this; | 87 | 88 | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>, rocksdb::IteratorWrapper>::operator++() Line | Count | Source | 84 | 119M | self_type& operator++() { | 85 | 119M | ++index_; | 86 | 119M | return *this; | 87 | 119M | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul> const, rocksdb::IteratorWrapper const>::operator++() Line | Count | Source | 84 | 3.10M | self_type& operator++() { | 85 | 3.10M | ++index_; | 86 | 3.10M | return *this; | 87 | 3.10M | } |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>, rocksdb::(anonymous namespace)::LRUHandle*>::operator++() Line | Count | Source | 84 | 488k | self_type& operator++() { | 85 | 488k | ++index_; | 86 | 488k | return *this; | 87 | 488k | } |
Unexecuted instantiation: cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul> const, rocksdb::(anonymous namespace)::LRUHandle* const>::operator++() rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>, rocksdb::LogBuffer::BufferedLog*>::operator++() Line | Count | Source | 84 | 287k | self_type& operator++() { | 85 | 287k | ++index_; | 86 | 287k | return *this; | 87 | 287k | } |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul> const, unsigned int const>::operator++() Line | Count | Source | 84 | 12 | self_type& operator++() { | 85 | 12 | ++index_; | 86 | 12 | return *this; | 87 | 12 | } |
|
88 | | |
89 | | // iterator++ |
90 | | self_type operator++(int) { |
91 | | auto old = *this; |
92 | | ++index_; |
93 | | return old; |
94 | | } |
95 | | |
96 | | // --iterator |
97 | | self_type& operator--() { |
98 | | --index_; |
99 | | return *this; |
100 | | } |
101 | | |
102 | | // iterator-- |
103 | | self_type operator--(int) { |
104 | | auto old = *this; |
105 | | --index_; |
106 | | return old; |
107 | | } |
108 | | |
109 | 24.8M | self_type operator-(difference_type len) { |
110 | 24.8M | return self_type(vect_, index_ - len); |
111 | 24.8M | } rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul>, rocksdb::MemTable*>::operator-(long) Line | Count | Source | 109 | 28.5k | self_type operator-(difference_type len) { | 110 | 28.5k | return self_type(vect_, index_ - len); | 111 | 28.5k | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>, rocksdb::IteratorWrapper>::operator-(long) Line | Count | Source | 109 | 24.2M | self_type operator-(difference_type len) { | 110 | 24.2M | return self_type(vect_, index_ - len); | 111 | 24.2M | } |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul>, unsigned int>::operator-(long) Line | Count | Source | 109 | 638k | self_type operator-(difference_type len) { | 110 | 638k | return self_type(vect_, index_ - len); | 111 | 638k | } |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul> const, unsigned int const>::operator-(long) Line | Count | Source | 109 | 2.05k | self_type operator-(difference_type len) { | 110 | 2.05k | return self_type(vect_, index_ - len); | 111 | 2.05k | } |
|
112 | | |
113 | 3 | difference_type operator-(const self_type& other) { |
114 | 3 | assert(vect_ == other.vect_); |
115 | 0 | return index_ - other.index_; |
116 | 3 | } |
117 | | |
118 | | self_type operator+(difference_type len) { |
119 | | return self_type(vect_, index_ + len); |
120 | | } |
121 | | |
122 | | self_type& operator+=(difference_type len) { |
123 | | index_ += len; |
124 | | return *this; |
125 | | } |
126 | | |
127 | | self_type& operator-=(difference_type len) { |
128 | | index_ -= len; |
129 | | return *this; |
130 | | } |
131 | | |
132 | | // -- Reference |
133 | 208M | reference operator*() { |
134 | 208M | assert(vect_->size() >= index_); |
135 | 0 | return (*vect_)[index_]; |
136 | 208M | } rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::SuperVersion*, 8ul>, rocksdb::SuperVersion*>::operator*() Line | Count | Source | 133 | 84.7k | reference operator*() { | 134 | 84.7k | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 84.7k | } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 8ul>, rocksdb::log::Writer*>::operator*() Line | Count | Source | 133 | 20.1k | reference operator*() { | 134 | 20.1k | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 20.1k | } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul>, rocksdb::MemTable*>::operator*() Line | Count | Source | 133 | 57.6k | reference operator*() { | 134 | 57.6k | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 57.6k | } |
rocksdb::autovector<void*, 8ul>::iterator_impl<rocksdb::autovector<void*, 8ul>, void*>::operator*() Line | Count | Source | 133 | 155k | reference operator*() { | 134 | 155k | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 155k | } |
Unexecuted instantiation: rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>, rocksdb::ColumnFamilyData*>::operator*() rocksdb::autovector<rocksdb::TableReader*, 16ul>::iterator_impl<rocksdb::autovector<rocksdb::TableReader*, 16ul>, rocksdb::TableReader*>::operator*() Line | Count | Source | 133 | 6 | reference operator*() { | 134 | 6 | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 6 | } |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::iterator_impl<rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul> const, std::__1::pair<int, rocksdb::FileMetaData*> const>::operator*() Line | Count | Source | 133 | 14 | reference operator*() { | 134 | 14 | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 14 | } |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 1ul>, rocksdb::log::Writer*>::operator*() Line | Count | Source | 133 | 8 | reference operator*() { | 134 | 8 | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 8 | } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>, rocksdb::WriteThread::Writer*>::operator*() Line | Count | Source | 133 | 59.9M | reference operator*() { | 134 | 59.9M | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 59.9M | } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul> const, rocksdb::MemTable* const>::operator*() Line | Count | Source | 133 | 29.0k | reference operator*() { | 134 | 29.0k | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 29.0k | } |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>, rocksdb::LevelFilesBrief>::operator*() Line | Count | Source | 133 | 88 | reference operator*() { | 134 | 88 | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 88 | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>, rocksdb::IteratorWrapper>::operator*() Line | Count | Source | 133 | 143M | reference operator*() { | 134 | 143M | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 143M | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul> const, rocksdb::IteratorWrapper const>::operator*() Line | Count | Source | 133 | 3.10M | reference operator*() { | 134 | 3.10M | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 3.10M | } |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>, rocksdb::(anonymous namespace)::LRUHandle*>::operator*() Line | Count | Source | 133 | 488k | reference operator*() { | 134 | 488k | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 488k | } |
Unexecuted instantiation: cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul> const, rocksdb::(anonymous namespace)::LRUHandle* const>::operator*() rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>, rocksdb::LogBuffer::BufferedLog*>::operator*() Line | Count | Source | 133 | 287k | reference operator*() { | 134 | 287k | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 287k | } |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul>, unsigned int>::operator*() Line | Count | Source | 133 | 638k | reference operator*() { | 134 | 638k | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 638k | } |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul> const, unsigned int const>::operator*() Line | Count | Source | 133 | 2.07k | reference operator*() { | 134 | 2.07k | assert(vect_->size() >= index_); | 135 | 0 | return (*vect_)[index_]; | 136 | 2.07k | } |
|
137 | | pointer operator->() { |
138 | | assert(vect_->size() >= index_); |
139 | | return &(*vect_)[index_]; |
140 | | } |
141 | | |
142 | | // -- Logical Operators |
143 | 490M | bool operator==(const self_type& other) const { |
144 | 490M | assert(vect_ == other.vect_); |
145 | 0 | return index_ == other.index_; |
146 | 490M | } rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::SuperVersion*, 8ul>, rocksdb::SuperVersion*>::operator==(rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::SuperVersion*, 8ul>, rocksdb::SuperVersion*> const&) const Line | Count | Source | 143 | 3.41M | bool operator==(const self_type& other) const { | 144 | 3.41M | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 3.41M | } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 8ul>, rocksdb::log::Writer*>::operator==(rocksdb::autovector<rocksdb::log::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 8ul>, rocksdb::log::Writer*> const&) const Line | Count | Source | 143 | 2.27M | bool operator==(const self_type& other) const { | 144 | 2.27M | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 2.27M | } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul>, rocksdb::MemTable*>::operator==(rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul>, rocksdb::MemTable*> const&) const Line | Count | Source | 143 | 33.0M | bool operator==(const self_type& other) const { | 144 | 33.0M | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 33.0M | } |
rocksdb::autovector<void*, 8ul>::iterator_impl<rocksdb::autovector<void*, 8ul>, void*>::operator==(rocksdb::autovector<void*, 8ul>::iterator_impl<rocksdb::autovector<void*, 8ul>, void*> const&) const Line | Count | Source | 143 | 1.39M | bool operator==(const self_type& other) const { | 144 | 1.39M | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 1.39M | } |
rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>, rocksdb::ColumnFamilyData*>::operator==(rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>, rocksdb::ColumnFamilyData*> const&) const Line | Count | Source | 143 | 175k | bool operator==(const self_type& other) const { | 144 | 175k | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 175k | } |
rocksdb::autovector<rocksdb::TableReader*, 16ul>::iterator_impl<rocksdb::autovector<rocksdb::TableReader*, 16ul>, rocksdb::TableReader*>::operator==(rocksdb::autovector<rocksdb::TableReader*, 16ul>::iterator_impl<rocksdb::autovector<rocksdb::TableReader*, 16ul>, rocksdb::TableReader*> const&) const Line | Count | Source | 143 | 7 | bool operator==(const self_type& other) const { | 144 | 7 | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 7 | } |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::iterator_impl<rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul> const, std::__1::pair<int, rocksdb::FileMetaData*> const>::operator==(rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::iterator_impl<rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul> const, std::__1::pair<int, rocksdb::FileMetaData*> const> const&) const Line | Count | Source | 143 | 28 | bool operator==(const self_type& other) const { | 144 | 28 | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 28 | } |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 1ul>, rocksdb::log::Writer*>::operator==(rocksdb::autovector<rocksdb::log::Writer*, 1ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 1ul>, rocksdb::log::Writer*> const&) const Line | Count | Source | 143 | 14 | bool operator==(const self_type& other) const { | 144 | 14 | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 14 | } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>, rocksdb::WriteThread::Writer*>::operator==(rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>, rocksdb::WriteThread::Writer*> const&) const Line | Count | Source | 143 | 116M | bool operator==(const self_type& other) const { | 144 | 116M | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 116M | } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul> const, rocksdb::MemTable* const>::operator==(rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul> const, rocksdb::MemTable* const> const&) const Line | Count | Source | 143 | 57.6k | bool operator==(const self_type& other) const { | 144 | 57.6k | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 57.6k | } |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>, rocksdb::LevelFilesBrief>::operator==(rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>, rocksdb::LevelFilesBrief> const&) const Line | Count | Source | 143 | 240 | bool operator==(const self_type& other) const { | 144 | 240 | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 240 | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>, rocksdb::IteratorWrapper>::operator==(rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>, rocksdb::IteratorWrapper> const&) const Line | Count | Source | 143 | 198M | bool operator==(const self_type& other) const { | 144 | 198M | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 198M | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul> const, rocksdb::IteratorWrapper const>::operator==(rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul> const, rocksdb::IteratorWrapper const> const&) const Line | Count | Source | 143 | 3.34M | bool operator==(const self_type& other) const { | 144 | 3.34M | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 3.34M | } |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>, rocksdb::(anonymous namespace)::LRUHandle*>::operator==(rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>, rocksdb::(anonymous namespace)::LRUHandle*> const&) const Line | Count | Source | 143 | 132M | bool operator==(const self_type& other) const { | 144 | 132M | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 132M | } |
Unexecuted instantiation: cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul> const, rocksdb::(anonymous namespace)::LRUHandle* const>::operator==(rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul> const, rocksdb::(anonymous namespace)::LRUHandle* const> const&) const rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>, rocksdb::LogBuffer::BufferedLog*>::operator==(rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>, rocksdb::LogBuffer::BufferedLog*> const&) const Line | Count | Source | 143 | 529k | bool operator==(const self_type& other) const { | 144 | 529k | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 529k | } |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul> const, unsigned int const>::operator==(rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul> const, unsigned int const> const&) const Line | Count | Source | 143 | 15 | bool operator==(const self_type& other) const { | 144 | 15 | assert(vect_ == other.vect_); | 145 | 0 | return index_ == other.index_; | 146 | 15 | } |
|
147 | | |
148 | 490M | bool operator!=(const self_type& other) const { return !(*this == other); } rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::SuperVersion*, 8ul>, rocksdb::SuperVersion*>::operator!=(rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::SuperVersion*, 8ul>, rocksdb::SuperVersion*> const&) const Line | Count | Source | 148 | 3.41M | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 8ul>, rocksdb::log::Writer*>::operator!=(rocksdb::autovector<rocksdb::log::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 8ul>, rocksdb::log::Writer*> const&) const Line | Count | Source | 148 | 2.27M | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul>, rocksdb::MemTable*>::operator!=(rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul>, rocksdb::MemTable*> const&) const Line | Count | Source | 148 | 33.0M | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<void*, 8ul>::iterator_impl<rocksdb::autovector<void*, 8ul>, void*>::operator!=(rocksdb::autovector<void*, 8ul>::iterator_impl<rocksdb::autovector<void*, 8ul>, void*> const&) const Line | Count | Source | 148 | 1.39M | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>, rocksdb::ColumnFamilyData*>::operator!=(rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>, rocksdb::ColumnFamilyData*> const&) const Line | Count | Source | 148 | 175k | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::TableReader*, 16ul>::iterator_impl<rocksdb::autovector<rocksdb::TableReader*, 16ul>, rocksdb::TableReader*>::operator!=(rocksdb::autovector<rocksdb::TableReader*, 16ul>::iterator_impl<rocksdb::autovector<rocksdb::TableReader*, 16ul>, rocksdb::TableReader*> const&) const Line | Count | Source | 148 | 7 | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::iterator_impl<rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul> const, std::__1::pair<int, rocksdb::FileMetaData*> const>::operator!=(rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::iterator_impl<rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul> const, std::__1::pair<int, rocksdb::FileMetaData*> const> const&) const Line | Count | Source | 148 | 28 | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 1ul>, rocksdb::log::Writer*>::operator!=(rocksdb::autovector<rocksdb::log::Writer*, 1ul>::iterator_impl<rocksdb::autovector<rocksdb::log::Writer*, 1ul>, rocksdb::log::Writer*> const&) const Line | Count | Source | 148 | 14 | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>, rocksdb::WriteThread::Writer*>::operator!=(rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>, rocksdb::WriteThread::Writer*> const&) const Line | Count | Source | 148 | 116M | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul> const, rocksdb::MemTable* const>::operator!=(rocksdb::autovector<rocksdb::MemTable*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::MemTable*, 8ul> const, rocksdb::MemTable* const> const&) const Line | Count | Source | 148 | 57.6k | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>, rocksdb::LevelFilesBrief>::operator!=(rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>, rocksdb::LevelFilesBrief> const&) const Line | Count | Source | 148 | 240 | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>, rocksdb::IteratorWrapper>::operator!=(rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>, rocksdb::IteratorWrapper> const&) const Line | Count | Source | 148 | 198M | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul> const, rocksdb::IteratorWrapper const>::operator!=(rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::iterator_impl<rocksdb::autovector<rocksdb::IteratorWrapper, 4ul> const, rocksdb::IteratorWrapper const> const&) const Line | Count | Source | 148 | 3.34M | bool operator!=(const self_type& other) const { return !(*this == other); } |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>, rocksdb::(anonymous namespace)::LRUHandle*>::operator!=(rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>, rocksdb::(anonymous namespace)::LRUHandle*> const&) const Line | Count | Source | 148 | 132M | bool operator!=(const self_type& other) const { return !(*this == other); } |
Unexecuted instantiation: cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul> const, rocksdb::(anonymous namespace)::LRUHandle* const>::operator!=(rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul> const, rocksdb::(anonymous namespace)::LRUHandle* const> const&) const rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>, rocksdb::LogBuffer::BufferedLog*>::operator!=(rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::iterator_impl<rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>, rocksdb::LogBuffer::BufferedLog*> const&) const Line | Count | Source | 148 | 529k | bool operator!=(const self_type& other) const { return !(*this == other); } |
rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul> const, unsigned int const>::operator!=(rocksdb::autovector<unsigned int, 8ul>::iterator_impl<rocksdb::autovector<unsigned int, 8ul> const, unsigned int const> const&) const Line | Count | Source | 148 | 15 | bool operator!=(const self_type& other) const { return !(*this == other); } |
|
149 | | |
150 | | bool operator>(const self_type& other) const { |
151 | | assert(vect_ == other.vect_); |
152 | | return index_ > other.index_; |
153 | | } |
154 | | |
155 | | bool operator<(const self_type& other) const { |
156 | | assert(vect_ == other.vect_); |
157 | | return index_ < other.index_; |
158 | | } |
159 | | |
160 | | bool operator>=(const self_type& other) const { |
161 | | assert(vect_ == other.vect_); |
162 | | return index_ >= other.index_; |
163 | | } |
164 | | |
165 | | bool operator<=(const self_type& other) const { |
166 | | assert(vect_ == other.vect_); |
167 | | return index_ <= other.index_; |
168 | | } |
169 | | |
170 | | private: |
171 | | TAutoVector* vect_ = nullptr; |
172 | | size_t index_ = 0; |
173 | | }; |
174 | | |
175 | | typedef iterator_impl<autovector, value_type> iterator; |
176 | | typedef iterator_impl<const autovector, const value_type> const_iterator; |
177 | | typedef std::reverse_iterator<iterator> reverse_iterator; |
178 | | typedef std::reverse_iterator<const_iterator> const_reverse_iterator; |
179 | | |
180 | 243M | autovector() = default; rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::autovector() Line | Count | Source | 180 | 3.32M | autovector() = default; |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::autovector() Line | Count | Source | 180 | 2.29M | autovector() = default; |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::autovector() Line | Count | Source | 180 | 33.0M | autovector() = default; |
rocksdb::autovector<void*, 8ul>::autovector() Line | Count | Source | 180 | 1.24M | autovector() = default; |
rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::autovector() Line | Count | Source | 180 | 175k | autovector() = default; |
rocksdb::autovector<rocksdb::TableReader*, 16ul>::autovector() Line | Count | Source | 180 | 1 | autovector() = default; |
rocksdb::autovector<rocksdb::LevelFilesBrief, 2ul>::autovector() Line | Count | Source | 180 | 23.7k | autovector() = default; |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::autovector() Line | Count | Source | 180 | 7 | autovector() = default; |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::autovector() Line | Count | Source | 180 | 28.7M | autovector() = default; |
rocksdb::autovector<rocksdb::FileIndexer::IndexLevel, 8ul>::autovector() Line | Count | Source | 180 | 1.65M | autovector() = default; |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::autovector() Line | Count | Source | 180 | 1.65M | autovector() = default; |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::autovector() Line | Count | Source | 180 | 1.65M | autovector() = default; |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::autovector() Line | Count | Source | 180 | 38.1M | autovector() = default; |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::autovector() Line | Count | Source | 180 | 131M | autovector() = default; |
rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::autovector() Line | Count | Source | 180 | 201k | autovector() = default; |
rocksdb::autovector<unsigned int, 8ul>::autovector() Line | Count | Source | 180 | 17.0k | autovector() = default; |
|
181 | 214M | ~autovector() = default; rocksdb::autovector<rocksdb::log::Writer*, 8ul>::~autovector() Line | Count | Source | 181 | 2.25M | ~autovector() = default; |
rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::~autovector() Line | Count | Source | 181 | 3.32M | ~autovector() = default; |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::~autovector() Line | Count | Source | 181 | 33.0M | ~autovector() = default; |
rocksdb::autovector<void*, 8ul>::~autovector() Line | Count | Source | 181 | 1.24M | ~autovector() = default; |
rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::~autovector() Line | Count | Source | 181 | 175k | ~autovector() = default; |
rocksdb::autovector<rocksdb::TableReader*, 16ul>::~autovector() Line | Count | Source | 181 | 1 | ~autovector() = default; |
rocksdb::autovector<rocksdb::LevelFilesBrief, 2ul>::~autovector() Line | Count | Source | 181 | 23.7k | ~autovector() = default; |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::~autovector() Line | Count | Source | 181 | 7 | ~autovector() = default; |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::~autovector() Line | Count | Source | 181 | 28.7M | ~autovector() = default; |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::~autovector() Line | Count | Source | 181 | 1.57M | ~autovector() = default; |
rocksdb::autovector<rocksdb::FileIndexer::IndexLevel, 8ul>::~autovector() Line | Count | Source | 181 | 1.57M | ~autovector() = default; |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::~autovector() Line | Count | Source | 181 | 1.57M | ~autovector() = default; |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::~autovector() Line | Count | Source | 181 | 9.47M | ~autovector() = default; |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::~autovector() Line | Count | Source | 181 | 131M | ~autovector() = default; |
rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::~autovector() Line | Count | Source | 181 | 201k | ~autovector() = default; |
Unexecuted instantiation: rocksdb::autovector<unsigned int, 8ul>::~autovector() |
182 | | |
183 | | // -- Immutable operations |
184 | | // Indicate if all data resides in in-stack data structure. |
185 | | bool only_in_stack() const { |
186 | | // If no element was inserted at all, the vector's capacity will be `0`. |
187 | | return vect_.capacity() == 0; |
188 | | } |
189 | | |
190 | 1.17G | size_type size() const { return num_stack_items_ + vect_.size(); } rocksdb::autovector<rocksdb::LevelFilesBrief, 2ul>::size() const Line | Count | Source | 190 | 112k | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::size() const Line | Count | Source | 190 | 1.01M | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::size() const Line | Count | Source | 190 | 146M | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::size() const Line | Count | Source | 190 | 6.05M | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::size() const Line | Count | Source | 190 | 35.9M | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::size() const Line | Count | Source | 190 | 6.68M | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<void*, 8ul>::size() const Line | Count | Source | 190 | 1.55M | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::size() const Line | Count | Source | 190 | 175k | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::TableReader*, 16ul>::size() const Line | Count | Source | 190 | 13 | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::size() const Line | Count | Source | 190 | 135k | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::size() const Line | Count | Source | 190 | 22 | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::size() const Line | Count | Source | 190 | 422M | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::FileIndexer::IndexLevel, 8ul>::size() const Line | Count | Source | 190 | 791k | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::size() const Line | Count | Source | 190 | 420M | size_type size() const { return num_stack_items_ + vect_.size(); } |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::size() const Line | Count | Source | 190 | 132M | size_type size() const { return num_stack_items_ + vect_.size(); } |
rocksdb::autovector<unsigned int, 8ul>::size() const Line | Count | Source | 190 | 4.08M | size_type size() const { return num_stack_items_ + vect_.size(); } |
|
191 | | |
192 | | // resize does not guarantee anything about the contents of the newly |
193 | | // available elements |
194 | 39.0M | void resize(size_type n) { |
195 | 39.0M | if (n > kSize) { |
196 | 10.1k | vect_.resize(n - kSize); |
197 | 10.1k | num_stack_items_ = kSize; |
198 | 39.0M | } else { |
199 | 39.0M | vect_.clear(); |
200 | 39.0M | num_stack_items_ = n; |
201 | 39.0M | } |
202 | 39.0M | } rocksdb::autovector<rocksdb::LevelFilesBrief, 2ul>::resize(unsigned long) Line | Count | Source | 194 | 23.7k | void resize(size_type n) { | 195 | 23.7k | if (n > kSize) { | 196 | 2.74k | vect_.resize(n - kSize); | 197 | 2.74k | num_stack_items_ = kSize; | 198 | 21.0k | } else { | 199 | 21.0k | vect_.clear(); | 200 | 21.0k | num_stack_items_ = n; | 201 | 21.0k | } | 202 | 23.7k | } |
rocksdb::autovector<rocksdb::FileIndexer::IndexLevel, 8ul>::resize(unsigned long) Line | Count | Source | 194 | 75.7k | void resize(size_type n) { | 195 | 75.7k | if (n > kSize) { | 196 | 2.34k | vect_.resize(n - kSize); | 197 | 2.34k | num_stack_items_ = kSize; | 198 | 73.4k | } else { | 199 | 73.4k | vect_.clear(); | 200 | 73.4k | num_stack_items_ = n; | 201 | 73.4k | } | 202 | 75.7k | } |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::resize(unsigned long) Line | Count | Source | 194 | 773k | void resize(size_type n) { | 195 | 773k | if (n > kSize) { | 196 | 2.34k | vect_.resize(n - kSize); | 197 | 2.34k | num_stack_items_ = kSize; | 198 | 771k | } else { | 199 | 771k | vect_.clear(); | 200 | 771k | num_stack_items_ = n; | 201 | 771k | } | 202 | 773k | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::resize(unsigned long) Line | Count | Source | 194 | 38.1M | void resize(size_type n) { | 195 | 38.1M | if (n > kSize) { | 196 | 2.74k | vect_.resize(n - kSize); | 197 | 2.74k | num_stack_items_ = kSize; | 198 | 38.1M | } else { | 199 | 38.1M | vect_.clear(); | 200 | 38.1M | num_stack_items_ = n; | 201 | 38.1M | } | 202 | 38.1M | } |
|
203 | | |
204 | 28.6M | bool empty() const { return size() == 0; } rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::empty() const Line | Count | Source | 204 | 201k | bool empty() const { return size() == 0; } |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::empty() const Line | Count | Source | 204 | 135k | bool empty() const { return size() == 0; } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::empty() const Line | Count | Source | 204 | 1.85M | bool empty() const { return size() == 0; } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::empty() const Line | Count | Source | 204 | 88.2k | bool empty() const { return size() == 0; } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::empty() const Line | Count | Source | 204 | 24.2M | bool empty() const { return size() == 0; } |
rocksdb::autovector<unsigned int, 8ul>::empty() const Line | Count | Source | 204 | 2.16M | bool empty() const { return size() == 0; } |
|
205 | | |
206 | 172M | const_reference operator[](size_type n) const { |
207 | 172M | assert(n < size()); |
208 | 172M | return n < kSize ? values_[n]170M : vect_[n - kSize]2.44M ; |
209 | 172M | } rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::operator[](unsigned long) const Line | Count | Source | 206 | 52.4M | const_reference operator[](size_type n) const { | 207 | 52.4M | assert(n < size()); | 208 | 52.4M | return n < kSize ? values_[n]52.4M : vect_[n - kSize]14.7k ; | 209 | 52.4M | } |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::operator[](unsigned long) const Line | Count | Source | 206 | 40 | const_reference operator[](size_type n) const { | 207 | 40 | assert(n < size()); | 208 | 40 | return n < kSize ? values_[n] : vect_[n - kSize]0 ; | 209 | 40 | } |
rocksdb::autovector<rocksdb::FileIndexer::IndexLevel, 8ul>::operator[](unsigned long) const Line | Count | Source | 206 | 734k | const_reference operator[](size_type n) const { | 207 | 734k | assert(n < size()); | 208 | 734k | return n < kSize ? values_[n]547k : vect_[n - kSize]186k ; | 209 | 734k | } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::operator[](unsigned long) const Line | Count | Source | 206 | 150k | const_reference operator[](size_type n) const { | 207 | 150k | assert(n < size()); | 208 | 150k | return n < kSize ? values_[n]150k : vect_[n - kSize]24 ; | 209 | 150k | } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::operator[](unsigned long) const Line | Count | Source | 206 | 116M | const_reference operator[](size_type n) const { | 207 | 116M | assert(n < size()); | 208 | 116M | return n < kSize ? values_[n]116M : vect_[n - kSize]13.3k ; | 209 | 116M | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::operator[](unsigned long) const Line | Count | Source | 206 | 3.10M | const_reference operator[](size_type n) const { | 207 | 3.10M | assert(n < size()); | 208 | 3.10M | return n < kSize ? values_[n]879k : vect_[n - kSize]2.22M ; | 209 | 3.10M | } |
Unexecuted instantiation: cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::operator[](unsigned long) const rocksdb::autovector<unsigned int, 8ul>::operator[](unsigned long) const Line | Count | Source | 206 | 2.07k | const_reference operator[](size_type n) const { | 207 | 2.07k | assert(n < size()); | 208 | 2.07k | return n < kSize ? values_[n] : vect_[n - kSize]0 ; | 209 | 2.07k | } |
|
210 | | |
211 | 276M | reference operator[](size_type n) { |
212 | 276M | assert(n < size()); |
213 | 276M | return n < kSize ? values_[n]266M : vect_[n - kSize]9.60M ; |
214 | 276M | } rocksdb::autovector<rocksdb::LevelFilesBrief, 2ul>::operator[](unsigned long) Line | Count | Source | 211 | 112k | reference operator[](size_type n) { | 212 | 112k | assert(n < size()); | 213 | 112k | return n < kSize ? values_[n]80.3k : vect_[n - kSize]32.4k ; | 214 | 112k | } |
rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 84.7k | reference operator[](size_type n) { | 212 | 84.7k | assert(n < size()); | 213 | 84.7k | return n < kSize ? values_[n]84.7k : vect_[n - kSize]30 ; | 214 | 84.7k | } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 20.1k | reference operator[](size_type n) { | 212 | 20.1k | assert(n < size()); | 213 | 20.1k | return n < kSize ? values_[n]20.1k : vect_[n - kSize]33 ; | 214 | 20.1k | } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 86.1k | reference operator[](size_type n) { | 212 | 86.1k | assert(n < size()); | 213 | 86.1k | return n < kSize ? values_[n]86.1k : vect_[n - kSize]7 ; | 214 | 86.1k | } |
rocksdb::autovector<void*, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 155k | reference operator[](size_type n) { | 212 | 155k | assert(n < size()); | 213 | 155k | return n < kSize ? values_[n]147k : vect_[n - kSize]8.20k ; | 214 | 155k | } |
Unexecuted instantiation: rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::operator[](unsigned long) rocksdb::autovector<rocksdb::TableReader*, 16ul>::operator[](unsigned long) Line | Count | Source | 211 | 6 | reference operator[](size_type n) { | 212 | 6 | assert(n < size()); | 213 | 6 | return n < kSize ? values_[n] : vect_[n - kSize]0 ; | 214 | 6 | } |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::operator[](unsigned long) Line | Count | Source | 211 | 8 | reference operator[](size_type n) { | 212 | 8 | assert(n < size()); | 213 | 8 | return n < kSize ? values_[n]6 : vect_[n - kSize]2 ; | 214 | 8 | } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 89.8M | reference operator[](size_type n) { | 212 | 89.8M | assert(n < size()); | 213 | 89.8M | return n < kSize ? values_[n]89.8M : vect_[n - kSize]13.5k ; | 214 | 89.8M | } |
rocksdb::autovector<rocksdb::FileIndexer::IndexLevel, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 56.9k | reference operator[](size_type n) { | 212 | 56.9k | assert(n < size()); | 213 | 56.9k | return n < kSize ? values_[n]51.5k : vect_[n - kSize]5.39k ; | 214 | 56.9k | } |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 41.3M | reference operator[](size_type n) { | 212 | 41.3M | assert(n < size()); | 213 | 41.3M | return n < kSize ? values_[n]39.1M : vect_[n - kSize]2.25M ; | 214 | 41.3M | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::operator[](unsigned long) Line | Count | Source | 211 | 143M | reference operator[](size_type n) { | 212 | 143M | assert(n < size()); | 213 | 143M | return n < kSize ? values_[n]136M : vect_[n - kSize]6.84M ; | 214 | 143M | } |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 488k | reference operator[](size_type n) { | 212 | 488k | assert(n < size()); | 213 | 18.4E | return n < kSize488k ? values_[n]488k : vect_[n - kSize]; | 214 | 488k | } |
rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 287k | reference operator[](size_type n) { | 212 | 287k | assert(n < size()); | 213 | 287k | return n < kSize ? values_[n]284k : vect_[n - kSize]3.21k ; | 214 | 287k | } |
rocksdb::autovector<unsigned int, 8ul>::operator[](unsigned long) Line | Count | Source | 211 | 638k | reference operator[](size_type n) { | 212 | 638k | assert(n < size()); | 213 | 638k | return n < kSize ? values_[n]201k : vect_[n - kSize]437k ; | 214 | 638k | } |
|
215 | | |
216 | | const_reference at(size_type n) const { |
217 | | assert(n < size()); |
218 | | return (*this)[n]; |
219 | | } |
220 | | |
221 | | reference at(size_type n) { |
222 | | assert(n < size()); |
223 | | return (*this)[n]; |
224 | | } |
225 | | |
226 | | reference front() { |
227 | | assert(!empty()); |
228 | | return *begin(); |
229 | | } |
230 | | |
231 | | const_reference front() const { |
232 | | assert(!empty()); |
233 | | return *begin(); |
234 | | } |
235 | | |
236 | 24.8M | reference back() { |
237 | 24.8M | assert(!empty()); |
238 | 0 | return *(end() - 1); |
239 | 24.8M | } rocksdb::autovector<rocksdb::MemTable*, 8ul>::back() Line | Count | Source | 236 | 28.5k | reference back() { | 237 | 28.5k | assert(!empty()); | 238 | 0 | return *(end() - 1); | 239 | 28.5k | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::back() Line | Count | Source | 236 | 24.2M | reference back() { | 237 | 24.2M | assert(!empty()); | 238 | 0 | return *(end() - 1); | 239 | 24.2M | } |
rocksdb::autovector<unsigned int, 8ul>::back() Line | Count | Source | 236 | 638k | reference back() { | 237 | 638k | assert(!empty()); | 238 | 0 | return *(end() - 1); | 239 | 638k | } |
|
240 | | |
241 | 2.05k | const_reference back() const { |
242 | 2.05k | assert(!empty()); |
243 | 0 | return *(end() - 1); |
244 | 2.05k | } |
245 | | |
246 | | // -- Mutable Operations |
247 | 24.3M | void push_back(T&& item) { |
248 | 24.3M | if (num_stack_items_ < kSize) { |
249 | 23.8M | values_[num_stack_items_++] = std::move(item); |
250 | 23.8M | } else { |
251 | 449k | vect_.push_back(item); |
252 | 449k | } |
253 | 24.3M | } Unexecuted instantiation: rocksdb::autovector<rocksdb::TableReader*, 16ul>::push_back(rocksdb::TableReader*&&) rocksdb::autovector<rocksdb::log::Writer*, 8ul>::push_back(rocksdb::log::Writer*&&) Line | Count | Source | 247 | 20.1k | void push_back(T&& item) { | 248 | 20.1k | if (num_stack_items_ < kSize) { | 249 | 20.1k | values_[num_stack_items_++] = std::move(item); | 250 | 20.1k | } else { | 251 | 33 | vect_.push_back(item); | 252 | 33 | } | 253 | 20.1k | } |
rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::push_back(rocksdb::SuperVersion*&&) Line | Count | Source | 247 | 83.5k | void push_back(T&& item) { | 248 | 83.5k | if (num_stack_items_ < kSize) { | 249 | 83.5k | values_[num_stack_items_++] = std::move(item); | 250 | 83.5k | } else { | 251 | 0 | vect_.push_back(item); | 252 | 0 | } | 253 | 83.5k | } |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::push_back(std::__1::pair<int, rocksdb::FileMetaData*>&&) Line | Count | Source | 247 | 38 | void push_back(T&& item) { | 248 | 38 | if (num_stack_items_ < kSize) { | 249 | 38 | values_[num_stack_items_++] = std::move(item); | 250 | 38 | } else { | 251 | 0 | vect_.push_back(item); | 252 | 0 | } | 253 | 38 | } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::push_back(rocksdb::IteratorWrapper&&) Line | Count | Source | 247 | 24.2M | void push_back(T&& item) { | 248 | 24.2M | if (num_stack_items_ < kSize) { | 249 | 23.7M | values_[num_stack_items_++] = std::move(item); | 250 | 23.7M | } else { | 251 | 449k | vect_.push_back(item); | 252 | 449k | } | 253 | 24.2M | } |
|
254 | | |
255 | 31.8M | void push_back(const T& item) { |
256 | 31.8M | if (num_stack_items_ < kSize) { |
257 | 31.2M | values_[num_stack_items_++] = item; |
258 | 31.2M | } else { |
259 | 584k | vect_.push_back(item); |
260 | 584k | } |
261 | 31.8M | } rocksdb::autovector<rocksdb::MemTable*, 8ul>::push_back(rocksdb::MemTable* const&) Line | Count | Source | 255 | 58.1k | void push_back(const T& item) { | 256 | 58.1k | if (num_stack_items_ < kSize) { | 257 | 58.1k | values_[num_stack_items_++] = item; | 258 | 58.1k | } else { | 259 | 10 | vect_.push_back(item); | 260 | 10 | } | 261 | 58.1k | } |
Unexecuted instantiation: rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::push_back(rocksdb::ColumnFamilyData* const&) rocksdb::autovector<rocksdb::TableReader*, 16ul>::push_back(rocksdb::TableReader* const&) Line | Count | Source | 255 | 6 | void push_back(const T& item) { | 256 | 6 | if (num_stack_items_ < kSize) { | 257 | 6 | values_[num_stack_items_++] = item; | 258 | 6 | } else { | 259 | 0 | vect_.push_back(item); | 260 | 0 | } | 261 | 6 | } |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::push_back(rocksdb::log::Writer* const&) Line | Count | Source | 255 | 8 | void push_back(const T& item) { | 256 | 8 | if (num_stack_items_ < kSize) { | 257 | 6 | values_[num_stack_items_++] = item; | 258 | 6 | } else { | 259 | 2 | vect_.push_back(item); | 260 | 2 | } | 261 | 8 | } |
rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::push_back(rocksdb::SuperVersion* const&) Line | Count | Source | 255 | 1.19k | void push_back(const T& item) { | 256 | 1.19k | if (num_stack_items_ < kSize) { | 257 | 1.16k | values_[num_stack_items_++] = item; | 258 | 1.16k | } else { | 259 | 30 | vect_.push_back(item); | 260 | 30 | } | 261 | 1.19k | } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::push_back(rocksdb::WriteThread::Writer* const&) Line | Count | Source | 255 | 30.0M | void push_back(const T& item) { | 256 | 30.0M | if (num_stack_items_ < kSize) { | 257 | 30.0M | values_[num_stack_items_++] = item; | 258 | 30.0M | } else { | 259 | 4.77k | vect_.push_back(item); | 260 | 4.77k | } | 261 | 30.0M | } |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::push_back(rocksdb::(anonymous namespace)::LRUHandle* const&) Line | Count | Source | 255 | 488k | void push_back(const T& item) { | 256 | 488k | if (num_stack_items_ < kSize488k ) { | 257 | 488k | values_[num_stack_items_++] = item; | 258 | 18.4E | } else { | 259 | 18.4E | vect_.push_back(item); | 260 | 18.4E | } | 261 | 488k | } |
rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::push_back(rocksdb::LogBuffer::BufferedLog* const&) Line | Count | Source | 255 | 287k | void push_back(const T& item) { | 256 | 287k | if (num_stack_items_ < kSize) { | 257 | 284k | values_[num_stack_items_++] = item; | 258 | 284k | } else { | 259 | 3.20k | vect_.push_back(item); | 260 | 3.20k | } | 261 | 287k | } |
rocksdb::autovector<void*, 8ul>::push_back(void* const&) Line | Count | Source | 255 | 155k | void push_back(const T& item) { | 256 | 155k | if (num_stack_items_ < kSize) { | 257 | 147k | values_[num_stack_items_++] = item; | 258 | 147k | } else { | 259 | 8.66k | vect_.push_back(item); | 260 | 8.66k | } | 261 | 155k | } |
rocksdb::autovector<unsigned int, 8ul>::push_back(unsigned int const&) Line | Count | Source | 255 | 801k | void push_back(const T& item) { | 256 | 801k | if (num_stack_items_ < kSize) { | 257 | 233k | values_[num_stack_items_++] = item; | 258 | 567k | } else { | 259 | 567k | vect_.push_back(item); | 260 | 567k | } | 261 | 801k | } |
|
262 | | |
263 | | template <class... Args> |
264 | 24.2M | void emplace_back(Args&&... args) { |
265 | 24.2M | push_back(value_type(args...)); |
266 | 24.2M | } void rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::emplace_back<int&, rocksdb::FileMetaData*&>(int&, rocksdb::FileMetaData*&) Line | Count | Source | 264 | 38 | void emplace_back(Args&&... args) { | 265 | 38 | push_back(value_type(args...)); | 266 | 38 | } |
void rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::emplace_back<rocksdb::InternalIterator*&>(rocksdb::InternalIterator*&) Line | Count | Source | 264 | 24.2M | void emplace_back(Args&&... args) { | 265 | 24.2M | push_back(value_type(args...)); | 266 | 24.2M | } |
|
267 | | |
268 | 638k | void pop_back() { |
269 | 638k | assert(!empty()); |
270 | 638k | if (!vect_.empty()) { |
271 | 437k | vect_.pop_back(); |
272 | 437k | } else { |
273 | 201k | --num_stack_items_; |
274 | 201k | } |
275 | 638k | } |
276 | | |
277 | 8.90M | void clear() { |
278 | 8.90M | num_stack_items_ = 0; |
279 | 8.90M | vect_.clear(); |
280 | 8.90M | } rocksdb::autovector<rocksdb::MemTable*, 8ul>::clear() Line | Count | Source | 277 | 1.85M | void clear() { | 278 | 1.85M | num_stack_items_ = 0; | 279 | 1.85M | vect_.clear(); | 280 | 1.85M | } |
rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::clear() Line | Count | Source | 277 | 1.85M | void clear() { | 278 | 1.85M | num_stack_items_ = 0; | 279 | 1.85M | vect_.clear(); | 280 | 1.85M | } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::clear() Line | Count | Source | 277 | 3.71M | void clear() { | 278 | 3.71M | num_stack_items_ = 0; | 279 | 3.71M | vect_.clear(); | 280 | 3.71M | } |
rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::clear() Line | Count | Source | 277 | 1.23M | void clear() { | 278 | 1.23M | num_stack_items_ = 0; | 279 | 1.23M | vect_.clear(); | 280 | 1.23M | } |
rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::clear() Line | Count | Source | 277 | 241k | void clear() { | 278 | 241k | num_stack_items_ = 0; | 279 | 241k | vect_.clear(); | 280 | 241k | } |
|
281 | | |
282 | | // -- Copy and Assignment |
283 | | autovector& assign(const autovector& other); |
284 | | |
285 | | autovector(const autovector& other) { assign(other); } |
286 | | |
287 | 1.85M | autovector& operator=(const autovector& other) { return assign(other); } |
288 | | |
289 | | // move operation are disallowed since it is very hard to make sure both |
290 | | // autovectors are allocated from the same function stack. |
291 | | autovector& operator=(autovector&& other) = delete; |
292 | | autovector(autovector&& other) = delete; |
293 | | |
294 | | // -- Iterator Operations |
295 | 307M | iterator begin() { return iterator(this, 0); } rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::begin() Line | Count | Source | 295 | 3.32M | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::begin() Line | Count | Source | 295 | 2.25M | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::begin() Line | Count | Source | 295 | 33.0M | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<void*, 8ul>::begin() Line | Count | Source | 295 | 1.24M | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::begin() Line | Count | Source | 295 | 175k | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<rocksdb::TableReader*, 16ul>::begin() Line | Count | Source | 295 | 1 | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::begin() Line | Count | Source | 295 | 6 | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::begin() Line | Count | Source | 295 | 56.2M | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::begin() Line | Count | Source | 295 | 152 | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::begin() Line | Count | Source | 295 | 79.2M | iterator begin() { return iterator(this, 0); } |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::begin() Line | Count | Source | 295 | 131M | iterator begin() { return iterator(this, 0); } |
rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::begin() Line | Count | Source | 295 | 241k | iterator begin() { return iterator(this, 0); } |
|
296 | | |
297 | 265k | const_iterator begin() const { return const_iterator(this, 0); } rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::begin() const Line | Count | Source | 297 | 14 | const_iterator begin() const { return const_iterator(this, 0); } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::begin() const Line | Count | Source | 297 | 28.5k | const_iterator begin() const { return const_iterator(this, 0); } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::begin() const Line | Count | Source | 297 | 236k | const_iterator begin() const { return const_iterator(this, 0); } |
Unexecuted instantiation: cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::begin() const rocksdb::autovector<unsigned int, 8ul>::begin() const Line | Count | Source | 297 | 3 | const_iterator begin() const { return const_iterator(this, 0); } |
|
298 | | |
299 | 332M | iterator end() { return iterator(this, this->size()); } rocksdb::autovector<rocksdb::SuperVersion*, 8ul>::end() Line | Count | Source | 299 | 3.32M | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::log::Writer*, 8ul>::end() Line | Count | Source | 299 | 2.25M | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::end() Line | Count | Source | 299 | 33.0M | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<void*, 8ul>::end() Line | Count | Source | 299 | 1.24M | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::ColumnFamilyData*, 8ul>::end() Line | Count | Source | 299 | 175k | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::TableReader*, 16ul>::end() Line | Count | Source | 299 | 1 | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::log::Writer*, 1ul>::end() Line | Count | Source | 299 | 6 | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::WriteThread::Writer*, 8ul>::end() Line | Count | Source | 299 | 56.1M | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::LevelFilesBrief, 8ul>::end() Line | Count | Source | 299 | 152 | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::end() Line | Count | Source | 299 | 103M | iterator end() { return iterator(this, this->size()); } |
cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::end() Line | Count | Source | 299 | 131M | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::LogBuffer::BufferedLog*, 8ul>::end() Line | Count | Source | 299 | 241k | iterator end() { return iterator(this, this->size()); } |
rocksdb::autovector<unsigned int, 8ul>::end() Line | Count | Source | 299 | 638k | iterator end() { return iterator(this, this->size()); } |
|
300 | | |
301 | 267k | const_iterator end() const { return const_iterator(this, this->size()); } rocksdb::autovector<std::__1::pair<int, rocksdb::FileMetaData*>, 8ul>::end() const Line | Count | Source | 301 | 14 | const_iterator end() const { return const_iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::MemTable*, 8ul>::end() const Line | Count | Source | 301 | 28.5k | const_iterator end() const { return const_iterator(this, this->size()); } |
rocksdb::autovector<rocksdb::IteratorWrapper, 4ul>::end() const Line | Count | Source | 301 | 236k | const_iterator end() const { return const_iterator(this, this->size()); } |
Unexecuted instantiation: cache.cc:rocksdb::autovector<rocksdb::(anonymous namespace)::LRUHandle*, 8ul>::end() const rocksdb::autovector<unsigned int, 8ul>::end() const Line | Count | Source | 301 | 2.06k | const_iterator end() const { return const_iterator(this, this->size()); } |
|
302 | | |
303 | | reverse_iterator rbegin() { return reverse_iterator(end()); } |
304 | | |
305 | | const_reverse_iterator rbegin() const { |
306 | | return const_reverse_iterator(end()); |
307 | | } |
308 | | |
309 | | reverse_iterator rend() { return reverse_iterator(begin()); } |
310 | | |
311 | | const_reverse_iterator rend() const { |
312 | | return const_reverse_iterator(begin()); |
313 | | } |
314 | | |
315 | | private: |
316 | | size_type num_stack_items_ = 0; // current number of items |
317 | | value_type values_[kSize]; // the first `kSize` items |
318 | | // used only if there are more than `kSize` items. |
319 | | std::vector<T> vect_; |
320 | | }; |
321 | | |
322 | | template <class T, size_t kSize> |
323 | 1.85M | autovector<T, kSize>& autovector<T, kSize>::assign(const autovector& other) { |
324 | | // copy the internal vector |
325 | 1.85M | vect_.assign(other.vect_.begin(), other.vect_.end()); |
326 | | |
327 | | // copy array |
328 | 1.85M | num_stack_items_ = other.num_stack_items_; |
329 | 1.85M | std::copy(other.values_, other.values_ + num_stack_items_, values_); |
330 | | |
331 | 1.85M | return *this; |
332 | 1.85M | } |
333 | | #endif // ROCKSDB_LITE |
334 | | } // namespace rocksdb |