/src/brpc/src/butil/containers/flat_map_inl.h
Line | Count | Source (jump to first uncovered line) |
1 | | // Licensed to the Apache Software Foundation (ASF) under one |
2 | | // or more contributor license agreements. See the NOTICE file |
3 | | // distributed with this work for additional information |
4 | | // regarding copyright ownership. The ASF licenses this file |
5 | | // to you under the Apache License, Version 2.0 (the |
6 | | // "License"); you may not use this file except in compliance |
7 | | // with the License. You may obtain a copy of the License at |
8 | | // |
9 | | // http://www.apache.org/licenses/LICENSE-2.0 |
10 | | // |
11 | | // Unless required by applicable law or agreed to in writing, |
12 | | // software distributed under the License is distributed on an |
13 | | // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
14 | | // KIND, either express or implied. See the License for the |
15 | | // specific language governing permissions and limitations |
16 | | // under the License. |
17 | | |
18 | | // Date: Wed Nov 27 12:59:20 CST 2013 |
19 | | |
20 | | #ifndef BUTIL_FLAT_MAP_INL_H |
21 | | #define BUTIL_FLAT_MAP_INL_H |
22 | | |
23 | | namespace butil { |
24 | | |
25 | 0 | inline uint32_t find_next_prime(uint32_t nbucket) { |
26 | 0 | static const unsigned long prime_list[] = { |
27 | 0 | 29ul, |
28 | 0 | 53ul, 97ul, 193ul, 389ul, 769ul, |
29 | 0 | 1543ul, 3079ul, 6151ul, 12289ul, 24593ul, |
30 | 0 | 49157ul, 98317ul, 196613ul, 393241ul, 786433ul, |
31 | 0 | 1572869ul, 3145739ul, 6291469ul, 12582917ul, 25165843ul, |
32 | 0 | 50331653ul, 100663319ul, 201326611ul, 402653189ul, 805306457ul, |
33 | 0 | 1610612741ul, 3221225473ul, 4294967291ul |
34 | 0 | }; |
35 | 0 | const size_t nprimes = sizeof(prime_list) / sizeof(prime_list[0]); |
36 | 0 | for (size_t i = 0; i < nprimes; i++) { |
37 | 0 | if (nbucket <= prime_list[i]) { |
38 | 0 | return prime_list[i]; |
39 | 0 | } |
40 | 0 | } |
41 | 0 | return nbucket; |
42 | 0 | } |
43 | | |
44 | | // NOTE: find_power2(0) = 0 |
45 | 2.98k | inline uint64_t find_power2(uint64_t b) { |
46 | 2.98k | b -= 1; |
47 | 2.98k | b |= (b >> 1); |
48 | 2.98k | b |= (b >> 2); |
49 | 2.98k | b |= (b >> 4); |
50 | 2.98k | b |= (b >> 8); |
51 | 2.98k | b |= (b >> 16); |
52 | 2.98k | b |= (b >> 32); |
53 | 2.98k | return b + 1; |
54 | 2.98k | } |
55 | | |
56 | | // Using next prime is slower for 10ns on average (due to %). If quality of |
57 | | // the hash code is good enough, primeness of nbucket is not important. We |
58 | | // choose to trust the hash code (or user should use a better hash algorithm |
59 | | // when the collisions are significant) and still stick to round-to-power-2 |
60 | | // solution right now. |
61 | 2.98k | inline size_t flatmap_round(size_t nbucket) { |
62 | | #ifdef FLAT_MAP_ROUND_BUCKET_BY_USE_NEXT_PRIME |
63 | | return find_next_prime(nbucket); |
64 | | #else |
65 | | // the lowerbound fixes the corner case of nbucket=0 which results in coredump during seeking the map. |
66 | 2.98k | return nbucket <= 8 ? 8 : find_power2(nbucket); |
67 | 2.98k | #endif |
68 | 2.98k | } |
69 | | |
70 | 92.0k | inline size_t flatmap_mod(size_t hash_code, size_t nbucket) { |
71 | | #ifdef FLAT_MAP_ROUND_BUCKET_BY_USE_NEXT_PRIME |
72 | | return hash_code % nbucket; |
73 | | #else |
74 | 92.0k | return hash_code & (nbucket - 1); |
75 | 92.0k | #endif |
76 | 92.0k | } |
77 | | |
78 | | // Iterate FlatMap |
79 | | template <typename Map, typename Value> class FlatMapIterator { |
80 | | public: |
81 | | typedef Value value_type; |
82 | | typedef Value& reference; |
83 | | typedef Value* pointer; |
84 | | typedef typename add_const<Value>::type ConstValue; |
85 | | typedef ConstValue& const_reference; |
86 | | typedef ConstValue* const_pointer; |
87 | | typedef std::forward_iterator_tag iterator_category; |
88 | | typedef ptrdiff_t difference_type; |
89 | | typedef typename remove_const<Value>::type NonConstValue; |
90 | | |
91 | 0 | FlatMapIterator() : _node(NULL), _entry(NULL) {} Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const>::FlatMapIterator() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const>::FlatMapIterator() |
92 | 28.1k | FlatMapIterator(const Map* map, size_t pos) { |
93 | 28.1k | _entry = map->_buckets + pos; |
94 | 28.1k | find_and_set_valid_node(); |
95 | 28.1k | } Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> >::FlatMapIterator(butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>, std::pair<butil::IOBuf::Block* const, butil::IOBufProfiler::BlockInfo> >::FlatMapIterator(butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> const>::FlatMapIterator(butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> >::FlatMapIterator(butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>, std::pair<butil::IOBufSample* const, std::shared_ptr<butil::IOBufSample> > >::FlatMapIterator(butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false> const*, unsigned long) butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Line | Count | Source | 92 | 1.28k | FlatMapIterator(const Map* map, size_t pos) { | 93 | 1.28k | _entry = map->_buckets + pos; | 94 | 1.28k | find_and_set_valid_node(); | 95 | 1.28k | } |
Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const>::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, bthread::TaskGroup*> >::FlatMapIterator(butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::LoadBalancer const*> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::NamingService const*> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> const>::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> >::FlatMapIterator(butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const>::FlatMapIterator(butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::DisplayType> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> const>::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>, std::pair<brpc::NSKey const, brpc::NamingServiceThread*> >::FlatMapIterator(butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::ConcurrencyLimiter const*> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true> const*, unsigned long) butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true> const*, unsigned long) Line | Count | Source | 92 | 24.1k | FlatMapIterator(const Map* map, size_t pos) { | 93 | 24.1k | _entry = map->_buckets + pos; | 94 | 24.1k | find_and_set_valid_node(); | 95 | 24.1k | } |
Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>, brpc::ServerId const>::FlatMapIterator(butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> >::FlatMapIterator(butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> >::FlatMapIterator(butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*)> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpContext::MessageStreamInfo> >::FlatMapIterator(butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpTransactionHandler*> >::FlatMapIterator(butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, int> >::FlatMapIterator(butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>, std::pair<brpc::SocketMapKey const, brpc::SocketMap::SingleConnection> >::FlatMapIterator(butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false> const*, unsigned long) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, mcpack2pb::MessageHandler> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false> const*, unsigned long) butil::FlatMapIterator<butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>, std::pair<brpc::HPacker::Header const, unsigned long> >::FlatMapIterator(butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false> const*, unsigned long) Line | Count | Source | 92 | 1.37k | FlatMapIterator(const Map* map, size_t pos) { | 93 | 1.37k | _entry = map->_buckets + pos; | 94 | 1.37k | find_and_set_valid_node(); | 95 | 1.37k | } |
butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >::FlatMapIterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false> const*, unsigned long) Line | Count | Source | 92 | 1.37k | FlatMapIterator(const Map* map, size_t pos) { | 93 | 1.37k | _entry = map->_buckets + pos; | 94 | 1.37k | find_and_set_valid_node(); | 95 | 1.37k | } |
|
96 | | FlatMapIterator(const FlatMapIterator<Map, NonConstValue>& rhs) |
97 | 0 | : _node(rhs._node), _entry(rhs._entry) {} Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> const>::FlatMapIterator(butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> > const&) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const>::FlatMapIterator(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> > const&) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> const>::FlatMapIterator(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> > const&) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> const>::FlatMapIterator(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> > const&) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> const>::FlatMapIterator(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> > const&) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const>::FlatMapIterator(butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> > const&) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::FlatMapIterator(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> const>::FlatMapIterator(butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> > const&) Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::FlatMapIterator(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) |
98 | | ~FlatMapIterator() = default; // required by style-checker |
99 | | |
100 | | // *this == rhs |
101 | | bool operator==(const FlatMapIterator& rhs) const |
102 | 0 | { return _node == rhs._node; } Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const>::operator==(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const>::operator==(butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const> const&) const |
103 | | |
104 | | // *this != rhs |
105 | | bool operator!=(const FlatMapIterator& rhs) const |
106 | 25.1k | { return _node != rhs._node; } Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> >::operator!=(butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>, std::pair<butil::IOBuf::Block* const, butil::IOBufProfiler::BlockInfo> >::operator!=(butil::FlatMapIterator<butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>, std::pair<butil::IOBuf::Block* const, butil::IOBufProfiler::BlockInfo> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>, std::pair<butil::IOBufSample* const, std::shared_ptr<butil::IOBufSample> > >::operator!=(butil::FlatMapIterator<butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>, std::pair<butil::IOBufSample* const, std::shared_ptr<butil::IOBufSample> > > const&) const butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> > const&) const Line | Count | Source | 106 | 640 | { return _node != rhs._node; } |
Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, bthread::TaskGroup*> >::operator!=(butil::FlatMapIterator<butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, bthread::TaskGroup*> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::LoadBalancer const*> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::LoadBalancer const*> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::NamingService const*> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::NamingService const*> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > const>::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> >::operator!=(butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::DisplayType> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::DisplayType> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>, std::pair<brpc::NSKey const, brpc::NamingServiceThread*> >::operator!=(butil::FlatMapIterator<butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>, std::pair<brpc::NSKey const, brpc::NamingServiceThread*> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::ConcurrencyLimiter const*> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::ConcurrencyLimiter const*> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> >::operator!=(butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const> const&) const butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) const Line | Count | Source | 106 | 23.1k | { return _node != rhs._node; } |
Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>, brpc::ServerId const>::operator!=(butil::FlatMapIterator<butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>, brpc::ServerId const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> >::operator!=(butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> const>::operator!=(butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> const> const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*)> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*)> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpContext::MessageStreamInfo> >::operator!=(butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpContext::MessageStreamInfo> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpTransactionHandler*> >::operator!=(butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpTransactionHandler*> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, int> >::operator!=(butil::FlatMapIterator<butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, int> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>, std::pair<brpc::SocketMapKey const, brpc::SocketMap::SingleConnection> >::operator!=(butil::FlatMapIterator<butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>, std::pair<brpc::SocketMapKey const, brpc::SocketMap::SingleConnection> > const&) const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, mcpack2pb::MessageHandler> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, mcpack2pb::MessageHandler> > const&) const butil::FlatMapIterator<butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>, std::pair<brpc::HPacker::Header const, unsigned long> >::operator!=(butil::FlatMapIterator<butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>, std::pair<brpc::HPacker::Header const, unsigned long> > const&) const Line | Count | Source | 106 | 686 | { return _node != rhs._node; } |
butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >::operator!=(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> > const&) const Line | Count | Source | 106 | 686 | { return _node != rhs._node; } |
|
107 | | |
108 | | // ++ it |
109 | 22.2k | FlatMapIterator& operator++() { |
110 | 22.2k | if (NULL == _node->next) { |
111 | 13.4k | ++_entry; |
112 | 13.4k | find_and_set_valid_node(); |
113 | 13.4k | } else { |
114 | 8.73k | _node = _node->next; |
115 | 8.73k | } |
116 | 22.2k | return *this; |
117 | 22.2k | } Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>, std::pair<butil::IOBuf::Block* const, butil::IOBufProfiler::BlockInfo> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>, std::pair<butil::IOBufSample* const, std::shared_ptr<butil::IOBufSample> > >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, bthread::TaskGroup*> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::LoadBalancer const*> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::NamingService const*> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::DisplayType> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>, std::pair<brpc::NSKey const, brpc::NamingServiceThread*> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::ConcurrencyLimiter const*> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::operator++() butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator++() Line | Count | Source | 109 | 22.2k | FlatMapIterator& operator++() { | 110 | 22.2k | if (NULL == _node->next) { | 111 | 13.4k | ++_entry; | 112 | 13.4k | find_and_set_valid_node(); | 113 | 13.4k | } else { | 114 | 8.73k | _node = _node->next; | 115 | 8.73k | } | 116 | 22.2k | return *this; | 117 | 22.2k | } |
Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>, brpc::ServerId const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> const>::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*)> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpContext::MessageStreamInfo> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpTransactionHandler*> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, int> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>, std::pair<brpc::SocketMapKey const, brpc::SocketMap::SingleConnection> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, mcpack2pb::MessageHandler> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>, std::pair<brpc::HPacker::Header const, unsigned long> >::operator++() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >::operator++() |
118 | | |
119 | | // it ++ |
120 | | FlatMapIterator operator++(int) { |
121 | | FlatMapIterator tmp = *this; |
122 | | this->operator++(); |
123 | | return tmp; |
124 | | } |
125 | | |
126 | 44.4k | reference operator*() { return _node->element().value_ref(); } Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>, std::pair<butil::IOBufSample* const, std::shared_ptr<butil::IOBufSample> > >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>, std::pair<butil::IOBuf::Block* const, butil::IOBufProfiler::BlockInfo> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> const>::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, bthread::TaskGroup*> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > const>::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::DisplayType> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>, std::pair<brpc::NSKey const, brpc::NamingServiceThread*> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::NamingService const*> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::LoadBalancer const*> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::ConcurrencyLimiter const*> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::operator*() butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator*() Line | Count | Source | 126 | 44.4k | reference operator*() { return _node->element().value_ref(); } |
Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>, brpc::ServerId const>::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> const>::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*)> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpContext::MessageStreamInfo> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpTransactionHandler*> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, int> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>, std::pair<brpc::SocketMapKey const, brpc::SocketMap::SingleConnection> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, mcpack2pb::MessageHandler> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>, std::pair<brpc::HPacker::Header const, unsigned long> >::operator*() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >::operator*() |
127 | 0 | pointer operator->() { return &_node->element().value_ref(); } Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>, std::pair<butil::IOBufSample* const, std::shared_ptr<butil::IOBufSample> > >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, bthread::TaskGroup*> >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::LoadBalancer const*> >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::NamingService const*> >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpContext::MessageStreamInfo> >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpTransactionHandler*> >::operator->() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>, std::pair<brpc::SocketMapKey const, brpc::SocketMap::SingleConnection> >::operator->() |
128 | | const_reference operator*() const { return _node->element().value_ref(); } |
129 | 0 | const_pointer operator->() const { return &_node->element().value_ref(); } Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const>::operator->() const Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const>::operator->() const |
130 | | |
131 | | private: |
132 | | friend class FlatMapIterator<Map, ConstValue>; |
133 | | friend class FlatMap<typename Map::key_type, typename Map::mapped_type, |
134 | | typename Map::hasher, typename Map::key_equal, |
135 | | false, typename Map::allocator_type>; |
136 | | |
137 | 41.6k | void find_and_set_valid_node() { |
138 | 86.3k | for (; !_entry->is_valid(); ++_entry); |
139 | 41.6k | _node = _entry; |
140 | 41.6k | } Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>, std::pair<bthread::SampledContention* const, bthread::SampledContention*> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>, std::pair<butil::IOBuf::Block* const, butil::IOBufProfiler::BlockInfo> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>, std::pair<std::shared_ptr<butil::IOBufSample> const, long> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>, std::pair<butil::IOBufSample* const, std::shared_ptr<butil::IOBufSample> > >::find_and_set_valid_node() butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> >::find_and_set_valid_node() Line | Count | Source | 137 | 1.28k | void find_and_set_valid_node() { | 138 | 11.5k | for (; !_entry->is_valid(); ++_entry); | 139 | 1.28k | _node = _entry; | 140 | 1.28k | } |
Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, bthread::TaskGroup*> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::MVarEntry> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::LoadBalancer const*> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::NamingService const*> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::ServiceProperty> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::MethodProperty> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::Server::SSLContext> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<brpc::SocketSSLContext> > const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::DisplayType> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>, std::pair<brpc::NSKey const, brpc::NamingServiceThread*> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, brpc::ConcurrencyLimiter const*> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> >::find_and_set_valid_node() butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::find_and_set_valid_node() Line | Count | Source | 137 | 37.6k | void find_and_set_valid_node() { | 138 | 50.1k | for (; !_entry->is_valid(); ++_entry); | 139 | 37.6k | _node = _entry; | 140 | 37.6k | } |
Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>, brpc::ServerId const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>, std::pair<int const, brpc::policy::H2StreamContext*> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, unsigned long> const>::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*)> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpContext::MessageStreamInfo> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>, std::pair<unsigned int const, brpc::policy::RtmpTransactionHandler*> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, int> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>, std::pair<brpc::SocketMapKey const, brpc::SocketMap::SingleConnection> >::find_and_set_valid_node() Unexecuted instantiation: butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, mcpack2pb::MessageHandler> >::find_and_set_valid_node() butil::FlatMapIterator<butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>, std::pair<brpc::HPacker::Header const, unsigned long> >::find_and_set_valid_node() Line | Count | Source | 137 | 1.37k | void find_and_set_valid_node() { | 138 | 12.3k | for (; !_entry->is_valid(); ++_entry); | 139 | 1.37k | _node = _entry; | 140 | 1.37k | } |
butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >::find_and_set_valid_node() Line | Count | Source | 137 | 1.37k | void find_and_set_valid_node() { | 138 | 12.3k | for (; !_entry->is_valid(); ++_entry); | 139 | 1.37k | _node = _entry; | 140 | 1.37k | } |
|
141 | | |
142 | | typename Map::Bucket* _node; |
143 | | typename Map::Bucket* _entry; |
144 | | }; |
145 | | |
146 | | // Iterate SparseFlatMap |
147 | | template <typename Map, typename Value> class SparseFlatMapIterator { |
148 | | public: |
149 | | typedef Value value_type; |
150 | | typedef Value& reference; |
151 | | typedef Value* pointer; |
152 | | typedef typename add_const<Value>::type ConstValue; |
153 | | typedef ConstValue& const_reference; |
154 | | typedef ConstValue* const_pointer; |
155 | | typedef std::forward_iterator_tag iterator_category; |
156 | | typedef ptrdiff_t difference_type; |
157 | | typedef typename remove_const<Value>::type NonConstValue; |
158 | | |
159 | | SparseFlatMapIterator() : _node(NULL), _pos(0), _map(NULL) {} |
160 | | SparseFlatMapIterator(const Map* map, size_t pos) { |
161 | | _map = map; |
162 | | _pos = pos; |
163 | | find_and_set_valid_node(); |
164 | | } |
165 | | SparseFlatMapIterator(const SparseFlatMapIterator<Map, NonConstValue>& rhs) |
166 | | : _node(rhs._node), _pos(rhs._pos), _map(rhs._map) |
167 | | {} |
168 | | ~SparseFlatMapIterator() = default; // required by style-checker |
169 | | |
170 | | // *this == rhs |
171 | | bool operator==(const SparseFlatMapIterator& rhs) const |
172 | | { return _node == rhs._node; } |
173 | | |
174 | | // *this != rhs |
175 | | bool operator!=(const SparseFlatMapIterator& rhs) const |
176 | | { return _node != rhs._node; } |
177 | | |
178 | | // ++ it |
179 | | SparseFlatMapIterator& operator++() { |
180 | | if (NULL == _node->next) { |
181 | | ++_pos; |
182 | | find_and_set_valid_node(); |
183 | | } else { |
184 | | _node = _node->next; |
185 | | } |
186 | | return *this; |
187 | | } |
188 | | |
189 | | // it ++ |
190 | | SparseFlatMapIterator operator++(int) { |
191 | | SparseFlatMapIterator tmp = *this; |
192 | | this->operator++(); |
193 | | return tmp; |
194 | | } |
195 | | |
196 | | reference operator*() { return _node->element().value_ref(); } |
197 | | pointer operator->() { return &_node->element().value_ref(); } |
198 | | const_reference operator*() const { return _node->element().value_ref(); } |
199 | | const_pointer operator->() const { return &_node->element().value_ref(); } |
200 | | |
201 | | private: |
202 | | friend class SparseFlatMapIterator<Map, ConstValue>; |
203 | | |
204 | | void find_and_set_valid_node() { |
205 | | if (!_map->_buckets[_pos].is_valid()) { |
206 | | _pos = bit_array_first1(_map->_thumbnail, _pos + 1, _map->_nbucket); |
207 | | } |
208 | | _node = _map->_buckets + _pos; |
209 | | } |
210 | | |
211 | | typename Map::Bucket* _node; |
212 | | size_t _pos; |
213 | | const Map* _map; |
214 | | }; |
215 | | |
216 | | template <typename _K, typename _T, typename _H, typename _E, |
217 | | bool _S, typename _A, bool _M> |
218 | | FlatMap<_K, _T, _H, _E, _S, _A, _M>::FlatMap(const hasher& hashfn, |
219 | | const key_equal& eql, |
220 | | const allocator_type& alloc) |
221 | 22.9k | : _size(0) |
222 | 22.9k | , _nbucket(DEFAULT_NBUCKET) |
223 | 22.9k | , _buckets((Bucket*)(&_default_buckets)) |
224 | 22.9k | , _thumbnail(_S ? _default_thumbnail : NULL) |
225 | 22.9k | , _load_factor(80) |
226 | 22.9k | , _is_default_load_factor(true) |
227 | 22.9k | , _hashfn(hashfn) |
228 | 22.9k | , _eql(eql) |
229 | 22.9k | , _pool(alloc) { |
230 | 22.9k | init_buckets_and_thumbnail(_buckets, _thumbnail, _nbucket); |
231 | 22.9k | } Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::FlatMap(bthread::ContentionHash const&, bthread::ContentionEqual const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::FlatMap(butil::detail::IOBufSampleHash<butil::IOBufSample*> const&, butil::detail::IOBufSampleEqual<butil::IOBufSample*> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<butil::IOBuf::Block*> const&, butil::DefaultEqualTo<butil::IOBuf::Block*> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::FlatMap(butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> > const&, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> > const&, butil::PtAllocator const&) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::PtAllocator const&) Line | Count | Source | 221 | 640 | : _size(0) | 222 | 640 | , _nbucket(DEFAULT_NBUCKET) | 223 | 640 | , _buckets((Bucket*)(&_default_buckets)) | 224 | 640 | , _thumbnail(_S ? _default_thumbnail : NULL) | 225 | 640 | , _load_factor(80) | 226 | 640 | , _is_default_load_factor(true) | 227 | 640 | , _hashfn(hashfn) | 228 | 640 | , _eql(eql) | 229 | 640 | , _pool(alloc) { | 230 | 640 | init_buckets_and_thumbnail(_buckets, _thumbnail, _nbucket); | 231 | 640 | } |
Unexecuted instantiation: butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<int> const&, butil::DefaultEqualTo<int> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::FlatMap(butil::CaseIgnoredHasher const&, butil::CaseIgnoredEqual const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::FlatMap(butil::CaseIgnoredHasher const&, butil::CaseIgnoredEqual const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::FlatMap(butil::CaseIgnoredHasher const&, butil::CaseIgnoredEqual const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::FlatMap(butil::CaseIgnoredHasher const&, butil::CaseIgnoredEqual const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<unsigned long> const&, butil::DefaultEqualTo<unsigned long> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::FlatMap(butil::CaseIgnoredHasher const&, butil::CaseIgnoredEqual const&, butil::PtAllocator const&) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::PtAllocator const&) Line | Count | Source | 221 | 10.0k | : _size(0) | 222 | 10.0k | , _nbucket(DEFAULT_NBUCKET) | 223 | 10.0k | , _buckets((Bucket*)(&_default_buckets)) | 224 | 10.0k | , _thumbnail(_S ? _default_thumbnail : NULL) | 225 | 10.0k | , _load_factor(80) | 226 | 10.0k | , _is_default_load_factor(true) | 227 | 10.0k | , _hashfn(hashfn) | 228 | 10.0k | , _eql(eql) | 229 | 10.0k | , _pool(alloc) { | 230 | 10.0k | init_buckets_and_thumbnail(_buckets, _thumbnail, _nbucket); | 231 | 10.0k | } |
Unexecuted instantiation: butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::FlatMap(brpc::NSKeyHasher const&, butil::DefaultEqualTo<brpc::NSKey> const&, butil::PtAllocator const&) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::FlatMap(butil::CaseIgnoredHasher const&, butil::CaseIgnoredEqual const&, butil::PtAllocator const&) Line | Count | Source | 221 | 9.49k | : _size(0) | 222 | 9.49k | , _nbucket(DEFAULT_NBUCKET) | 223 | 9.49k | , _buckets((Bucket*)(&_default_buckets)) | 224 | 9.49k | , _thumbnail(_S ? _default_thumbnail : NULL) | 225 | 9.49k | , _load_factor(80) | 226 | 9.49k | , _is_default_load_factor(true) | 227 | 9.49k | , _hashfn(hashfn) | 228 | 9.49k | , _eql(eql) | 229 | 9.49k | , _pool(alloc) { | 230 | 9.49k | init_buckets_and_thumbnail(_buckets, _thumbnail, _nbucket); | 231 | 9.49k | } |
Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<brpc::ServerId> const&, butil::DefaultEqualTo<brpc::ServerId> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<int> const&, butil::DefaultEqualTo<int> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<unsigned long> const&, butil::DefaultEqualTo<unsigned long> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<unsigned int> const&, butil::DefaultEqualTo<unsigned int> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<unsigned int> const&, butil::DefaultEqualTo<unsigned int> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<unsigned long> const&, butil::DefaultEqualTo<unsigned long> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::FlatMap(brpc::SocketMapKeyHasher const&, butil::DefaultEqualTo<brpc::SocketMapKey> const&, butil::PtAllocator const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::FlatMap(butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, butil::PtAllocator const&) butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::FlatMap(brpc::HeaderHasher const&, brpc::HeaderEqualTo const&, butil::PtAllocator const&) Line | Count | Source | 221 | 1.37k | : _size(0) | 222 | 1.37k | , _nbucket(DEFAULT_NBUCKET) | 223 | 1.37k | , _buckets((Bucket*)(&_default_buckets)) | 224 | 1.37k | , _thumbnail(_S ? _default_thumbnail : NULL) | 225 | 1.37k | , _load_factor(80) | 226 | 1.37k | , _is_default_load_factor(true) | 227 | 1.37k | , _hashfn(hashfn) | 228 | 1.37k | , _eql(eql) | 229 | 1.37k | , _pool(alloc) { | 230 | 1.37k | init_buckets_and_thumbnail(_buckets, _thumbnail, _nbucket); | 231 | 1.37k | } |
butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::FlatMap(butil::CaseIgnoredHasher const&, butil::CaseIgnoredEqual const&, butil::PtAllocator const&) Line | Count | Source | 221 | 1.37k | : _size(0) | 222 | 1.37k | , _nbucket(DEFAULT_NBUCKET) | 223 | 1.37k | , _buckets((Bucket*)(&_default_buckets)) | 224 | 1.37k | , _thumbnail(_S ? _default_thumbnail : NULL) | 225 | 1.37k | , _load_factor(80) | 226 | 1.37k | , _is_default_load_factor(true) | 227 | 1.37k | , _hashfn(hashfn) | 228 | 1.37k | , _eql(eql) | 229 | 1.37k | , _pool(alloc) { | 230 | 1.37k | init_buckets_and_thumbnail(_buckets, _thumbnail, _nbucket); | 231 | 1.37k | } |
|
232 | | |
233 | | template <typename _K, typename _T, typename _H, typename _E, |
234 | | bool _S, typename _A, bool _M> |
235 | | FlatMap<_K, _T, _H, _E, _S, _A, _M>::FlatMap(const FlatMap& rhs) |
236 | | : FlatMap(rhs._hashfn, rhs._eql, rhs.get_allocator()) { |
237 | | init_buckets_and_thumbnail(_buckets, _thumbnail, _nbucket); |
238 | | if (!rhs.empty()) { |
239 | | operator=(rhs); |
240 | | } |
241 | | } |
242 | | |
243 | | template <typename _K, typename _T, typename _H, typename _E, |
244 | | bool _S, typename _A, bool _M> |
245 | 22.3k | FlatMap<_K, _T, _H, _E, _S, _A, _M>::~FlatMap() { |
246 | 22.3k | clear(); |
247 | 22.3k | if (!is_default_buckets()) { |
248 | 2.04k | get_allocator().Free(_buckets); |
249 | 2.04k | _buckets = NULL; |
250 | 2.04k | bit_array_free(_thumbnail); |
251 | 2.04k | _thumbnail = NULL; |
252 | 2.04k | } |
253 | 22.3k | _nbucket = 0; |
254 | 22.3k | _load_factor = 0; |
255 | 22.3k | } Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::~FlatMap() butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::~FlatMap() Line | Count | Source | 245 | 9.49k | FlatMap<_K, _T, _H, _E, _S, _A, _M>::~FlatMap() { | 246 | 9.49k | clear(); | 247 | 9.49k | if (!is_default_buckets()) { | 248 | 670 | get_allocator().Free(_buckets); | 249 | 670 | _buckets = NULL; | 250 | 670 | bit_array_free(_thumbnail); | 251 | 670 | _thumbnail = NULL; | 252 | 670 | } | 253 | 9.49k | _nbucket = 0; | 254 | 9.49k | _load_factor = 0; | 255 | 9.49k | } |
butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::~FlatMap() Line | Count | Source | 245 | 10.0k | FlatMap<_K, _T, _H, _E, _S, _A, _M>::~FlatMap() { | 246 | 10.0k | clear(); | 247 | 10.0k | if (!is_default_buckets()) { | 248 | 0 | get_allocator().Free(_buckets); | 249 | 0 | _buckets = NULL; | 250 | 0 | bit_array_free(_thumbnail); | 251 | 0 | _thumbnail = NULL; | 252 | 0 | } | 253 | 10.0k | _nbucket = 0; | 254 | 10.0k | _load_factor = 0; | 255 | 10.0k | } |
Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::~FlatMap() Unexecuted instantiation: butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::~FlatMap() butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::~FlatMap() Line | Count | Source | 245 | 1.37k | FlatMap<_K, _T, _H, _E, _S, _A, _M>::~FlatMap() { | 246 | 1.37k | clear(); | 247 | 1.37k | if (!is_default_buckets()) { | 248 | 685 | get_allocator().Free(_buckets); | 249 | 685 | _buckets = NULL; | 250 | 685 | bit_array_free(_thumbnail); | 251 | 685 | _thumbnail = NULL; | 252 | 685 | } | 253 | 1.37k | _nbucket = 0; | 254 | 1.37k | _load_factor = 0; | 255 | 1.37k | } |
butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::~FlatMap() Line | Count | Source | 245 | 1.37k | FlatMap<_K, _T, _H, _E, _S, _A, _M>::~FlatMap() { | 246 | 1.37k | clear(); | 247 | 1.37k | if (!is_default_buckets()) { | 248 | 685 | get_allocator().Free(_buckets); | 249 | 685 | _buckets = NULL; | 250 | 685 | bit_array_free(_thumbnail); | 251 | 685 | _thumbnail = NULL; | 252 | 685 | } | 253 | 1.37k | _nbucket = 0; | 254 | 1.37k | _load_factor = 0; | 255 | 1.37k | } |
|
256 | | |
257 | | template <typename _K, typename _T, typename _H, typename _E, |
258 | | bool _S, typename _A, bool _M> |
259 | | FlatMap<_K, _T, _H, _E, _S, _A, _M>& |
260 | | FlatMap<_K, _T, _H, _E, _S, _A, _M>::operator=( |
261 | 0 | const FlatMap<_K, _T, _H, _E, _S, _A, _M>& rhs) { |
262 | 0 | if (this == &rhs) { |
263 | 0 | return *this; |
264 | 0 | } |
265 | | |
266 | 0 | clear(); |
267 | 0 | if (rhs.empty()) { |
268 | 0 | return *this; |
269 | 0 | } |
270 | | // NOTE: assignment only changes _load_factor when it is default. |
271 | 0 | init_load_factor(rhs._load_factor); |
272 | 0 | if (is_too_crowded(rhs._size)) { |
273 | 0 | optional<NewBucketsInfo> info = |
274 | 0 | new_buckets_and_thumbnail(rhs._size, rhs._nbucket); |
275 | 0 | if (info.has_value()) { |
276 | 0 | _nbucket = info->nbucket; |
277 | 0 | if (!is_default_buckets()) { |
278 | 0 | get_allocator().Free(_buckets); |
279 | 0 | if (_S) { |
280 | 0 | bit_array_free(_thumbnail); |
281 | 0 | } |
282 | 0 | } |
283 | 0 | _buckets = info->buckets; |
284 | 0 | _thumbnail = info->thumbnail; |
285 | 0 | } |
286 | | // Failed new of buckets or thumbnail is OK. |
287 | | // Use old buckets and thumbnail even if map will be crowded. |
288 | 0 | } |
289 | 0 | if (_nbucket == rhs._nbucket) { |
290 | | // For equivalent _nbucket, walking through _buckets instead of using |
291 | | // iterators is more efficient. |
292 | 0 | for (size_t i = 0; i < rhs._nbucket; ++i) { |
293 | 0 | if (rhs._buckets[i].is_valid()) { |
294 | 0 | if (_S) { |
295 | 0 | bit_array_set(_thumbnail, i); |
296 | 0 | } |
297 | 0 | new (&_buckets[i]) Bucket(rhs._buckets[i]); |
298 | 0 | Bucket* p1 = &_buckets[i]; |
299 | 0 | Bucket* p2 = rhs._buckets[i].next; |
300 | 0 | while (p2) { |
301 | 0 | p1->next = new (_pool.get()) Bucket(*p2); |
302 | 0 | p1 = p1->next; |
303 | 0 | p2 = p2->next; |
304 | 0 | } |
305 | 0 | } |
306 | 0 | } |
307 | 0 | _buckets[rhs._nbucket].next = NULL; |
308 | 0 | _size = rhs._size; |
309 | 0 | } else { |
310 | 0 | for (const_iterator it = rhs.begin(); it != rhs.end(); ++it) { |
311 | 0 | operator[](Element::first_ref_from_value(*it)) = |
312 | 0 | Element::second_ref_from_value(*it); |
313 | 0 | } |
314 | 0 | } |
315 | 0 | return *this; |
316 | 0 | } Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::operator=(butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false> const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::operator=(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false> const&) Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::operator=(butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false> const&) |
317 | | |
318 | | template <typename _K, typename _T, typename _H, typename _E, |
319 | | bool _S, typename _A, bool _M> |
320 | 2.01k | int FlatMap<_K, _T, _H, _E, _S, _A, _M>::init(size_t nbucket, u_int load_factor) { |
321 | 2.01k | if (nbucket <= _nbucket || load_factor < 10 || load_factor > 100 || |
322 | 2.01k | !_is_default_load_factor || !empty() || !is_default_buckets()) { |
323 | 0 | return 0; |
324 | 0 | } |
325 | | |
326 | 2.01k | init_load_factor(load_factor); |
327 | 2.01k | return resize(nbucket) ? 0 : -1; |
328 | 2.01k | } Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Line | Count | Source | 320 | 640 | int FlatMap<_K, _T, _H, _E, _S, _A, _M>::init(size_t nbucket, u_int load_factor) { | 321 | 640 | if (nbucket <= _nbucket || load_factor < 10 || load_factor > 100 || | 322 | 640 | !_is_default_load_factor || !empty() || !is_default_buckets()) { | 323 | 0 | return 0; | 324 | 0 | } | 325 | | | 326 | 640 | init_load_factor(load_factor); | 327 | 640 | return resize(nbucket) ? 0 : -1; | 328 | 640 | } |
Unexecuted instantiation: butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Line | Count | Source | 320 | 686 | int FlatMap<_K, _T, _H, _E, _S, _A, _M>::init(size_t nbucket, u_int load_factor) { | 321 | 686 | if (nbucket <= _nbucket || load_factor < 10 || load_factor > 100 || | 322 | 686 | !_is_default_load_factor || !empty() || !is_default_buckets()) { | 323 | 0 | return 0; | 324 | 0 | } | 325 | | | 326 | 686 | init_load_factor(load_factor); | 327 | 686 | return resize(nbucket) ? 0 : -1; | 328 | 686 | } |
butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::init(unsigned long, unsigned int) Line | Count | Source | 320 | 686 | int FlatMap<_K, _T, _H, _E, _S, _A, _M>::init(size_t nbucket, u_int load_factor) { | 321 | 686 | if (nbucket <= _nbucket || load_factor < 10 || load_factor > 100 || | 322 | 686 | !_is_default_load_factor || !empty() || !is_default_buckets()) { | 323 | 0 | return 0; | 324 | 0 | } | 325 | | | 326 | 686 | init_load_factor(load_factor); | 327 | 686 | return resize(nbucket) ? 0 : -1; | 328 | 686 | } |
|
329 | | |
330 | | template <typename _K, typename _T, typename _H, typename _E, |
331 | | bool _S, typename _A, bool _M> |
332 | | void FlatMap<_K, _T, _H, _E, _S, _A, _M>::swap( |
333 | 0 | FlatMap<_K, _T, _H, _E, _S, _A, _M>& rhs) { |
334 | 0 | if (!is_default_buckets() && !rhs.is_default_buckets()) { |
335 | 0 | std::swap(rhs._buckets, _buckets); |
336 | 0 | std::swap(rhs._thumbnail, _thumbnail); |
337 | 0 | } else { |
338 | 0 | for (size_t i = 0; i < DEFAULT_NBUCKET; ++i) { |
339 | 0 | _default_buckets[i].swap(rhs._default_buckets[i]); |
340 | 0 | } |
341 | 0 | if (_S) { |
342 | 0 | for (size_t i = 0; i < default_nthumbnail; ++i) { |
343 | 0 | std::swap(_default_thumbnail[i], rhs._default_thumbnail[i]); |
344 | 0 | } |
345 | 0 | } |
346 | 0 | if (!is_default_buckets() && rhs.is_default_buckets()) { |
347 | 0 | rhs._buckets = _buckets; |
348 | 0 | rhs._thumbnail = _thumbnail; |
349 | 0 | _buckets = _default_buckets; |
350 | 0 | _thumbnail = _default_thumbnail; |
351 | 0 | } else if (is_default_buckets() && !rhs.is_default_buckets()) { |
352 | 0 | _buckets = rhs._buckets; |
353 | 0 | _thumbnail = rhs._thumbnail; |
354 | 0 | rhs._buckets = rhs._default_buckets; |
355 | 0 | rhs._thumbnail = rhs._thumbnail; |
356 | 0 | } // else both are default buckets which has been swapped, so no need to swap `_buckets'. |
357 | 0 | } |
358 | |
|
359 | 0 | std::swap(rhs._size, _size); |
360 | 0 | std::swap(rhs._nbucket, _nbucket); |
361 | 0 | std::swap(rhs._is_default_load_factor, _is_default_load_factor); |
362 | 0 | std::swap(rhs._load_factor, _load_factor); |
363 | 0 | std::swap(rhs._hashfn, _hashfn); |
364 | 0 | std::swap(rhs._eql, _eql); |
365 | 0 | rhs._pool.swap(_pool); |
366 | 0 | } Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::swap(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::swap(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::swap(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>&) Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::swap(butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>&) |
367 | | |
368 | | template <typename _K, typename _T, typename _H, typename _E, |
369 | | bool _S, typename _A, bool _M> |
370 | | _T* FlatMap<_K, _T, _H, _E, _S, _A, _M>::insert( |
371 | 25.3k | const key_type& key, const mapped_type& value) { |
372 | 25.3k | mapped_type *p = &operator[](key); |
373 | 25.3k | *p = value; |
374 | 25.3k | return p; |
375 | 25.3k | } Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::insert(bthread::SampledContention* const&, bthread::SampledContention* const&) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::insert(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<brpc::SocketSSLContext> const&) Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::insert(unsigned long const&, brpc::ConnectStatistics const&) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::insert(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Line | Count | Source | 371 | 25.3k | const key_type& key, const mapped_type& value) { | 372 | 25.3k | mapped_type *p = &operator[](key); | 373 | 25.3k | *p = value; | 374 | 25.3k | return p; | 375 | 25.3k | } |
Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::insert(brpc::ServerId const&, butil::FlatMapVoid const&) |
376 | | |
377 | | template <typename _K, typename _T, typename _H, typename _E, |
378 | | bool _S, typename _A, bool _M> |
379 | | _T* FlatMap<_K, _T, _H, _E, _S, _A, _M>::insert( |
380 | 25.3k | const std::pair<key_type, mapped_type>& kv) { |
381 | 25.3k | return insert(kv.first, kv.second); |
382 | 25.3k | } |
383 | | |
384 | | template <typename _K, typename _T, typename _H, typename _E, |
385 | | bool _S, typename _A, bool _M> |
386 | | template <typename K2, bool Multi> |
387 | | typename std::enable_if<!Multi, size_t >::type |
388 | 0 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::erase(const K2& key, _T* old_value) { |
389 | | // TODO: Do we need auto collapsing here? |
390 | 0 | const size_t index = flatmap_mod(_hashfn(key), _nbucket); |
391 | 0 | Bucket& first_node = _buckets[index]; |
392 | 0 | if (!first_node.is_valid()) { |
393 | 0 | return 0; |
394 | 0 | } |
395 | 0 | if (_eql(first_node.element().first_ref(), key)) { |
396 | 0 | if (old_value) { |
397 | 0 | *old_value = first_node.element().second_movable_ref(); |
398 | 0 | } |
399 | 0 | if (first_node.next == NULL) { |
400 | 0 | first_node.destroy_element(); |
401 | 0 | first_node.set_invalid(); |
402 | 0 | if (_S) { |
403 | 0 | bit_array_unset(_thumbnail, index); |
404 | 0 | } |
405 | 0 | } else { |
406 | | // A seemingly correct solution is to copy the memory of *p to |
407 | | // first_node directly like this: |
408 | | // first_node.destroy_element(); |
409 | | // first_node = *p; |
410 | | // It works at most of the time, but is wrong generally. |
411 | | // If _T references self inside like this: |
412 | | // Value { |
413 | | // Value() : num(0), num_ptr(&num) {} |
414 | | // int num; |
415 | | // int* num_ptr; |
416 | | // }; |
417 | | // After copying, num_ptr will be invalid. |
418 | | // Calling operator= is the price that we have to pay. |
419 | 0 | Bucket* p = first_node.next; |
420 | 0 | first_node.next = p->next; |
421 | 0 | const_cast<_K&>(first_node.element().first_ref()) = |
422 | 0 | p->element().first_ref(); |
423 | 0 | first_node.element().second_ref() = p->element().second_movable_ref(); |
424 | 0 | p->destroy_element(); |
425 | 0 | _pool.back(p); |
426 | 0 | } |
427 | 0 | --_size; |
428 | 0 | return 1UL; |
429 | 0 | } |
430 | 0 | Bucket *p = first_node.next; |
431 | 0 | Bucket *last_p = &first_node; |
432 | 0 | while (p) { |
433 | 0 | if (_eql(p->element().first_ref(), key)) { |
434 | 0 | if (old_value) { |
435 | 0 | *old_value = p->element().second_movable_ref(); |
436 | 0 | } |
437 | 0 | last_p->next = p->next; |
438 | 0 | p->destroy_element(); |
439 | 0 | _pool.back(p); |
440 | 0 | --_size; |
441 | 0 | return 1UL; |
442 | 0 | } |
443 | 0 | last_p = p; |
444 | 0 | p = p->next; |
445 | 0 | } |
446 | 0 | return 0; |
447 | 0 | } Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::erase<butil::IOBufSample*, false>(butil::IOBufSample* const&, std::shared_ptr<butil::IOBufSample>*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::erase<butil::IOBuf::Block*, false>(butil::IOBuf::Block* const&, butil::IOBufProfiler::BlockInfo*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::erase<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bvar::VarEntry*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::erase<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bvar::MVarEntry*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::erase<char const*, false>(char const* const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::erase<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::erase<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, brpc::Server::MethodProperty*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::erase<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, brpc::Server::ServiceProperty*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::erase<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, brpc::Server::SSLContext*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::erase<char const*, false>(char const* const&, std::shared_ptr<brpc::SocketSSLContext>*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::erase<unsigned long, false>(unsigned long const&, brpc::ConnectStatistics*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::erase<brpc::NSKey, false>(brpc::NSKey const&, brpc::NamingServiceThread**) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::erase<int, false>(int const&, brpc::policy::H2StreamContext**) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::erase<unsigned long, false>(unsigned long const&, unsigned long*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::erase<unsigned int, false>(unsigned int const&, brpc::policy::RtmpContext::MessageStreamInfo*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::erase<unsigned int, false>(unsigned int const&, brpc::policy::RtmpTransactionHandler**) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::erase<unsigned long, false>(unsigned long const&, int*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::erase<brpc::SocketMapKey, false>(brpc::SocketMapKey const&, brpc::SocketMap::SingleConnection*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::erase<brpc::HPacker::Header, false>(brpc::HPacker::Header const&, unsigned long*) Unexecuted instantiation: std::enable_if<!(false), unsigned long>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::erase<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long*) |
448 | | |
449 | | template <typename _K, typename _T, typename _H, typename _E, |
450 | | bool _S, typename _A, bool _M> |
451 | | template <typename K2, bool Multi> |
452 | | typename std::enable_if<Multi, size_t >::type |
453 | | FlatMap<_K, _T, _H, _E, _S, _A, _M>::erase( |
454 | 0 | const K2& key, std::vector<mapped_type>* old_values) { |
455 | | // TODO: Do we need auto collapsing here? |
456 | 0 | const size_t index = flatmap_mod(_hashfn(key), _nbucket); |
457 | 0 | Bucket& first_node = _buckets[index]; |
458 | 0 | if (!first_node.is_valid()) { |
459 | 0 | return 0; |
460 | 0 | } |
461 | | |
462 | 0 | Bucket* new_head = NULL; |
463 | 0 | Bucket* new_tail = NULL; |
464 | 0 | Bucket* p = &first_node; |
465 | 0 | size_t total = _size; |
466 | 0 | while (NULL != p) { |
467 | 0 | if (_eql(p->element().first_ref(), key)) { |
468 | 0 | if (NULL != old_values) { |
469 | 0 | old_values->push_back(p->element().second_movable_ref()); |
470 | 0 | } |
471 | 0 | Bucket* temp = p; |
472 | 0 | p = p->next; |
473 | 0 | temp->destroy_element(); |
474 | 0 | if (temp != &first_node) { |
475 | 0 | _pool.back(temp); |
476 | 0 | } |
477 | 0 | --_size; |
478 | 0 | } else { |
479 | 0 | if (NULL == new_head) { |
480 | 0 | new_head = p; |
481 | 0 | new_tail = p; |
482 | 0 | } else { |
483 | 0 | new_tail->next = p; |
484 | 0 | new_tail = new_tail->next; |
485 | 0 | } |
486 | 0 | p = p->next; |
487 | 0 | } |
488 | 0 | } |
489 | 0 | if (NULL != new_tail) { |
490 | 0 | new_tail->next = NULL; |
491 | 0 | } |
492 | 0 | if (NULL == new_head) { |
493 | | // Erase all element. |
494 | 0 | first_node.set_invalid(); |
495 | 0 | if (_S) { |
496 | 0 | bit_array_unset(_thumbnail, index); |
497 | 0 | } |
498 | 0 | } else if (new_head != &first_node) { |
499 | | // The First node has been erased, need to move new head node as first node. |
500 | 0 | first_node.next = new_head->next; |
501 | 0 | const_cast<_K&>(first_node.element().first_ref()) = |
502 | 0 | new_head->element().first_ref(); |
503 | 0 | first_node.element().second_ref() = new_head->element().second_movable_ref(); |
504 | 0 | new_head->destroy_element(); |
505 | 0 | _pool.back(new_head); |
506 | 0 | } |
507 | 0 | return total - _size; |
508 | 0 | } |
509 | | |
510 | | template <typename _K, typename _T, typename _H, typename _E, |
511 | | bool _S, typename _A, bool _M> |
512 | 36.4k | void FlatMap<_K, _T, _H, _E, _S, _A, _M>::clear() { |
513 | 36.4k | if (0 == _size) { |
514 | 29.9k | return; |
515 | 29.9k | } |
516 | 6.46k | _size = 0; |
517 | 6.46k | if (NULL != _buckets) { |
518 | 146k | for (size_t i = 0; i < _nbucket; ++i) { |
519 | 139k | Bucket& first_node = _buckets[i]; |
520 | 139k | if (first_node.is_valid()) { |
521 | 31.2k | first_node.destroy_element(); |
522 | 31.2k | Bucket* p = first_node.next; |
523 | 47.6k | while (p) { |
524 | 16.3k | Bucket* next_p = p->next; |
525 | 16.3k | p->destroy_element(); |
526 | 16.3k | _pool.back(p); |
527 | 16.3k | p = next_p; |
528 | 16.3k | } |
529 | 31.2k | first_node.set_invalid(); |
530 | 31.2k | } |
531 | 139k | } |
532 | 6.46k | } |
533 | 6.46k | if (NULL != _thumbnail) { |
534 | 0 | bit_array_clear(_thumbnail, _nbucket); |
535 | 0 | } |
536 | 6.46k | } Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::clear() butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::clear() Line | Count | Source | 512 | 640 | void FlatMap<_K, _T, _H, _E, _S, _A, _M>::clear() { | 513 | 640 | if (0 == _size) { | 514 | 640 | return; | 515 | 640 | } | 516 | 0 | _size = 0; | 517 | 0 | if (NULL != _buckets) { | 518 | 0 | for (size_t i = 0; i < _nbucket; ++i) { | 519 | 0 | Bucket& first_node = _buckets[i]; | 520 | 0 | if (first_node.is_valid()) { | 521 | 0 | first_node.destroy_element(); | 522 | 0 | Bucket* p = first_node.next; | 523 | 0 | while (p) { | 524 | 0 | Bucket* next_p = p->next; | 525 | 0 | p->destroy_element(); | 526 | 0 | _pool.back(p); | 527 | 0 | p = next_p; | 528 | 0 | } | 529 | 0 | first_node.set_invalid(); | 530 | 0 | } | 531 | 0 | } | 532 | 0 | } | 533 | 0 | if (NULL != _thumbnail) { | 534 | 0 | bit_array_clear(_thumbnail, _nbucket); | 535 | 0 | } | 536 | 0 | } |
Unexecuted instantiation: butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::clear() butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::clear() Line | Count | Source | 512 | 21.1k | void FlatMap<_K, _T, _H, _E, _S, _A, _M>::clear() { | 513 | 21.1k | if (0 == _size) { | 514 | 21.1k | return; | 515 | 21.1k | } | 516 | 0 | _size = 0; | 517 | 0 | if (NULL != _buckets) { | 518 | 0 | for (size_t i = 0; i < _nbucket; ++i) { | 519 | 0 | Bucket& first_node = _buckets[i]; | 520 | 0 | if (first_node.is_valid()) { | 521 | 0 | first_node.destroy_element(); | 522 | 0 | Bucket* p = first_node.next; | 523 | 0 | while (p) { | 524 | 0 | Bucket* next_p = p->next; | 525 | 0 | p->destroy_element(); | 526 | 0 | _pool.back(p); | 527 | 0 | p = next_p; | 528 | 0 | } | 529 | 0 | first_node.set_invalid(); | 530 | 0 | } | 531 | 0 | } | 532 | 0 | } | 533 | 0 | if (NULL != _thumbnail) { | 534 | 0 | bit_array_clear(_thumbnail, _nbucket); | 535 | 0 | } | 536 | 0 | } |
Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::clear() butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::clear() Line | Count | Source | 512 | 10.4k | void FlatMap<_K, _T, _H, _E, _S, _A, _M>::clear() { | 513 | 10.4k | if (0 == _size) { | 514 | 4.00k | return; | 515 | 4.00k | } | 516 | 6.46k | _size = 0; | 517 | 6.46k | if (NULL != _buckets) { | 518 | 146k | for (size_t i = 0; i < _nbucket; ++i) { | 519 | 139k | Bucket& first_node = _buckets[i]; | 520 | 139k | if (first_node.is_valid()) { | 521 | 31.2k | first_node.destroy_element(); | 522 | 31.2k | Bucket* p = first_node.next; | 523 | 47.6k | while (p) { | 524 | 16.3k | Bucket* next_p = p->next; | 525 | 16.3k | p->destroy_element(); | 526 | 16.3k | _pool.back(p); | 527 | 16.3k | p = next_p; | 528 | 16.3k | } | 529 | 31.2k | first_node.set_invalid(); | 530 | 31.2k | } | 531 | 139k | } | 532 | 6.46k | } | 533 | 6.46k | if (NULL != _thumbnail) { | 534 | 0 | bit_array_clear(_thumbnail, _nbucket); | 535 | 0 | } | 536 | 6.46k | } |
Unexecuted instantiation: butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::clear() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::clear() butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::clear() Line | Count | Source | 512 | 2.05k | void FlatMap<_K, _T, _H, _E, _S, _A, _M>::clear() { | 513 | 2.05k | if (0 == _size) { | 514 | 2.05k | return; | 515 | 2.05k | } | 516 | 0 | _size = 0; | 517 | 0 | if (NULL != _buckets) { | 518 | 0 | for (size_t i = 0; i < _nbucket; ++i) { | 519 | 0 | Bucket& first_node = _buckets[i]; | 520 | 0 | if (first_node.is_valid()) { | 521 | 0 | first_node.destroy_element(); | 522 | 0 | Bucket* p = first_node.next; | 523 | 0 | while (p) { | 524 | 0 | Bucket* next_p = p->next; | 525 | 0 | p->destroy_element(); | 526 | 0 | _pool.back(p); | 527 | 0 | p = next_p; | 528 | 0 | } | 529 | 0 | first_node.set_invalid(); | 530 | 0 | } | 531 | 0 | } | 532 | 0 | } | 533 | 0 | if (NULL != _thumbnail) { | 534 | 0 | bit_array_clear(_thumbnail, _nbucket); | 535 | 0 | } | 536 | 0 | } |
butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::clear() Line | Count | Source | 512 | 2.05k | void FlatMap<_K, _T, _H, _E, _S, _A, _M>::clear() { | 513 | 2.05k | if (0 == _size) { | 514 | 2.05k | return; | 515 | 2.05k | } | 516 | 0 | _size = 0; | 517 | 0 | if (NULL != _buckets) { | 518 | 0 | for (size_t i = 0; i < _nbucket; ++i) { | 519 | 0 | Bucket& first_node = _buckets[i]; | 520 | 0 | if (first_node.is_valid()) { | 521 | 0 | first_node.destroy_element(); | 522 | 0 | Bucket* p = first_node.next; | 523 | 0 | while (p) { | 524 | 0 | Bucket* next_p = p->next; | 525 | 0 | p->destroy_element(); | 526 | 0 | _pool.back(p); | 527 | 0 | p = next_p; | 528 | 0 | } | 529 | 0 | first_node.set_invalid(); | 530 | 0 | } | 531 | 0 | } | 532 | 0 | } | 533 | 0 | if (NULL != _thumbnail) { | 534 | 0 | bit_array_clear(_thumbnail, _nbucket); | 535 | 0 | } | 536 | 0 | } |
|
537 | | |
538 | | template <typename _K, typename _T, typename _H, typename _E, |
539 | | bool _S, typename _A, bool _M> |
540 | | void FlatMap<_K, _T, _H, _E, _S, _A, _M>::clear_and_reset_pool() { |
541 | | clear(); |
542 | | _pool.reset(); |
543 | | } |
544 | | |
545 | | template <typename _K, typename _T, typename _H, typename _E, |
546 | | bool _S, typename _A, bool _M> |
547 | | template <typename K2> |
548 | 43.1k | _T* FlatMap<_K, _T, _H, _E, _S, _A, _M>::seek(const K2& key) const { |
549 | 43.1k | Bucket& first_node = _buckets[flatmap_mod(_hashfn(key), _nbucket)]; |
550 | 43.1k | if (!first_node.is_valid()) { |
551 | 23.6k | return NULL; |
552 | 23.6k | } |
553 | 19.5k | if (_eql(first_node.element().first_ref(), key)) { |
554 | 8.98k | return &first_node.element().second_ref(); |
555 | 8.98k | } |
556 | 10.5k | Bucket *p = first_node.next; |
557 | 18.6k | while (p) { |
558 | 9.03k | if (_eql(p->element().first_ref(), key)) { |
559 | 960 | return &p->element().second_ref(); |
560 | 960 | } |
561 | 8.07k | p = p->next; |
562 | 8.07k | } |
563 | 9.60k | return NULL; |
564 | 10.5k | } Unexecuted instantiation: bthread::SampledContention** butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::seek<bthread::SampledContention*>(bthread::SampledContention* const&) const Unexecuted instantiation: std::shared_ptr<butil::IOBufSample>* butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::seek<butil::IOBufSample*>(butil::IOBufSample* const&) const Unexecuted instantiation: butil::IOBufProfiler::BlockInfo* butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::seek<butil::IOBuf::Block*>(butil::IOBuf::Block* const&) const bvar::VarEntry* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Line | Count | Source | 548 | 164 | _T* FlatMap<_K, _T, _H, _E, _S, _A, _M>::seek(const K2& key) const { | 549 | 164 | Bucket& first_node = _buckets[flatmap_mod(_hashfn(key), _nbucket)]; | 550 | 164 | if (!first_node.is_valid()) { | 551 | 164 | return NULL; | 552 | 164 | } | 553 | 0 | if (_eql(first_node.element().first_ref(), key)) { | 554 | 0 | return &first_node.element().second_ref(); | 555 | 0 | } | 556 | 0 | Bucket *p = first_node.next; | 557 | 0 | while (p) { | 558 | 0 | if (_eql(p->element().first_ref(), key)) { | 559 | 0 | return &p->element().second_ref(); | 560 | 0 | } | 561 | 0 | p = p->next; | 562 | 0 | } | 563 | 0 | return NULL; | 564 | 0 | } |
Unexecuted instantiation: bvar::MVarEntry* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<char const*>(char const* const&) const Unexecuted instantiation: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: brpc::ConcurrencyLimiter const** butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::seek<char const*>(char const* const&) const Unexecuted instantiation: brpc::Server::ServiceProperty* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: brpc::Server::MethodProperty* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: brpc::Server::ServiceProperty* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<butil::BasicStringPiece<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(butil::BasicStringPiece<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&) const Unexecuted instantiation: brpc::Server::MethodProperty* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<butil::BasicStringPiece<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(butil::BasicStringPiece<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&) const Unexecuted instantiation: brpc::Server::SSLContext* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: std::shared_ptr<brpc::SocketSSLContext>* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::seek<char const*>(char const* const&) const Unexecuted instantiation: brpc::DisplayType* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: brpc::NamingServiceThread** butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::seek<brpc::NSKey>(brpc::NSKey const&) const Unexecuted instantiation: brpc::NamingService const** butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::seek<char const*>(char const* const&) const Unexecuted instantiation: brpc::NamingService const** butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: brpc::LoadBalancer const** butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: brpc::ConcurrencyLimiter const** butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Line | Count | Source | 548 | 43.0k | _T* FlatMap<_K, _T, _H, _E, _S, _A, _M>::seek(const K2& key) const { | 549 | 43.0k | Bucket& first_node = _buckets[flatmap_mod(_hashfn(key), _nbucket)]; | 550 | 43.0k | if (!first_node.is_valid()) { | 551 | 23.4k | return NULL; | 552 | 23.4k | } | 553 | 19.5k | if (_eql(first_node.element().first_ref(), key)) { | 554 | 8.98k | return &first_node.element().second_ref(); | 555 | 8.98k | } | 556 | 10.5k | Bucket *p = first_node.next; | 557 | 18.6k | while (p) { | 558 | 9.03k | if (_eql(p->element().first_ref(), key)) { | 559 | 960 | return &p->element().second_ref(); | 560 | 960 | } | 561 | 8.07k | p = p->next; | 562 | 8.07k | } | 563 | 9.60k | return NULL; | 564 | 10.5k | } |
Unexecuted instantiation: brpc::LoadBalancer const** butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::seek<char const*>(char const* const&) const Unexecuted instantiation: butil::FlatMapVoid* butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::seek<brpc::ServerId>(brpc::ServerId const&) const Unexecuted instantiation: brpc::policy::H2StreamContext** butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::seek<int>(int const&) const Unexecuted instantiation: unsigned long* butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::seek<unsigned long>(unsigned long const&) const Unexecuted instantiation: brpc::policy::RtmpContext::MessageStreamInfo* butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::seek<unsigned int>(unsigned int const&) const Unexecuted instantiation: brpc::policy::RtmpTransactionHandler** butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::seek<unsigned int>(unsigned int const&) const Unexecuted instantiation: bool (brpc::policy::RtmpChunkStream::**butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*) Unexecuted instantiation: int* butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::seek<unsigned long>(unsigned long const&) const Unexecuted instantiation: brpc::SocketMap::SingleConnection* butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::seek<brpc::SocketMapKey>(brpc::SocketMapKey const&) const Unexecuted instantiation: mcpack2pb::MessageHandler* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: unsigned long* butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::seek<brpc::HPacker::Header>(brpc::HPacker::Header const&) const Unexecuted instantiation: unsigned long* butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::seek<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const Unexecuted instantiation: unsigned long* butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::seek<brpc::HeaderAndHashCode>(brpc::HeaderAndHashCode const&) const |
565 | | |
566 | | template <typename _K, typename _T, typename _H, typename _E, |
567 | | bool _S, typename _A, bool _M> |
568 | | template <typename K2> std::vector<_T*> |
569 | | FlatMap<_K, _T, _H, _E, _S, _A, _M>::seek_all(const K2& key) const { |
570 | | std::vector<_T*> v; |
571 | | Bucket& first_node = _buckets[flatmap_mod(_hashfn(key), _nbucket)]; |
572 | | if (!first_node.is_valid()) { |
573 | | return v; |
574 | | } |
575 | | if (_eql(first_node.element().first_ref(), key)) { |
576 | | v.push_back(&first_node.element().second_ref()); |
577 | | } |
578 | | Bucket *p = first_node.next; |
579 | | while (p) { |
580 | | if (_eql(p->element().first_ref(), key)) { |
581 | | v.push_back(&p->element().second_ref()); |
582 | | } |
583 | | p = p->next; |
584 | | } |
585 | | return v; |
586 | | } |
587 | | |
588 | | template <typename _K, typename _T, typename _H, typename _E, |
589 | | bool _S, typename _A, bool _M> |
590 | | template<bool Multi> |
591 | | typename std::enable_if<!Multi, _T&>::type |
592 | 239 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::operator[](const key_type& key) { |
593 | 239 | const size_t index = flatmap_mod(_hashfn(key), _nbucket); |
594 | 239 | Bucket& first_node = _buckets[index]; |
595 | | // LOG(INFO) << "index=" << index; |
596 | 239 | if (!first_node.is_valid()) { |
597 | 219 | ++_size; |
598 | 219 | if (_S) { |
599 | 0 | bit_array_set(_thumbnail, index); |
600 | 0 | } |
601 | 219 | new (&first_node) Bucket(key); |
602 | 219 | return first_node.element().second_ref(); |
603 | 219 | } |
604 | 20 | Bucket *p = &first_node; |
605 | 24 | while (true) { |
606 | 24 | if (_eql(p->element().first_ref(), key)) { |
607 | 9 | return p->element().second_ref(); |
608 | 9 | } |
609 | 15 | if (NULL == p->next) { |
610 | 11 | if (is_too_crowded(_size) && resize(_nbucket + 1)) { |
611 | 0 | return operator[](key); |
612 | 0 | } |
613 | | // Fail to resize is OK. |
614 | 11 | ++_size; |
615 | 11 | Bucket* newp = new (_pool.get()) Bucket(key); |
616 | 11 | p->next = newp; |
617 | 11 | return newp->element().second_ref(); |
618 | 11 | } |
619 | 4 | p = p->next; |
620 | 4 | } |
621 | 20 | } Unexecuted instantiation: std::enable_if<!(false), bthread::SampledContention*&>::type butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::operator[]<false>(bthread::SampledContention* const&) Unexecuted instantiation: std::enable_if<!(false), std::shared_ptr<butil::IOBufSample>&>::type butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::operator[]<false>(butil::IOBufSample* const&) Unexecuted instantiation: std::enable_if<!(false), long&>::type butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::operator[]<false>(std::shared_ptr<butil::IOBufSample> const&) Unexecuted instantiation: std::enable_if<!(false), butil::IOBufProfiler::BlockInfo&>::type butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::operator[]<false>(butil::IOBuf::Block* const&) std::enable_if<!(false), bvar::VarEntry&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Line | Count | Source | 592 | 164 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::operator[](const key_type& key) { | 593 | 164 | const size_t index = flatmap_mod(_hashfn(key), _nbucket); | 594 | 164 | Bucket& first_node = _buckets[index]; | 595 | | // LOG(INFO) << "index=" << index; | 596 | 164 | if (!first_node.is_valid()) { | 597 | 164 | ++_size; | 598 | 164 | if (_S) { | 599 | 0 | bit_array_set(_thumbnail, index); | 600 | 0 | } | 601 | 164 | new (&first_node) Bucket(key); | 602 | 164 | return first_node.element().second_ref(); | 603 | 164 | } | 604 | 0 | Bucket *p = &first_node; | 605 | 0 | while (true) { | 606 | 0 | if (_eql(p->element().first_ref(), key)) { | 607 | 0 | return p->element().second_ref(); | 608 | 0 | } | 609 | 0 | if (NULL == p->next) { | 610 | 0 | if (is_too_crowded(_size) && resize(_nbucket + 1)) { | 611 | 0 | return operator[](key); | 612 | 0 | } | 613 | | // Fail to resize is OK. | 614 | 0 | ++_size; | 615 | 0 | Bucket* newp = new (_pool.get()) Bucket(key); | 616 | 0 | p->next = newp; | 617 | 0 | return newp->element().second_ref(); | 618 | 0 | } | 619 | 0 | p = p->next; | 620 | 0 | } | 621 | 0 | } |
Unexecuted instantiation: std::enable_if<!(false), bthread::TaskGroup*&>::type butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::operator[]<false>(int const&) Unexecuted instantiation: std::enable_if<!(false), bvar::MVarEntry&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), brpc::Server::MethodProperty&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), brpc::Server::ServiceProperty&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), brpc::Server::SSLContext&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), std::shared_ptr<brpc::SocketSSLContext>&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), brpc::ConnectStatistics&>::type butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::operator[]<false>(unsigned long const&) Unexecuted instantiation: std::enable_if<!(false), brpc::DisplayType&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), brpc::NamingServiceThread*&>::type butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::operator[]<false>(brpc::NSKey const&) Unexecuted instantiation: std::enable_if<!(false), brpc::NamingService const*&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), brpc::LoadBalancer const*&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), brpc::ConcurrencyLimiter const*&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), butil::FlatMapVoid&>::type butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::operator[]<false>(brpc::ServerId const&) Unexecuted instantiation: std::enable_if<!(false), brpc::policy::H2StreamContext*&>::type butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::operator[]<false>(int const&) Unexecuted instantiation: std::enable_if<!(false), unsigned long&>::type butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::operator[]<false>(unsigned long const&) Unexecuted instantiation: std::enable_if<!(false), bool (brpc::policy::RtmpChunkStream::*&)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*)>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Unexecuted instantiation: std::enable_if<!(false), brpc::policy::RtmpContext::MessageStreamInfo&>::type butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::operator[]<false>(unsigned int const&) Unexecuted instantiation: std::enable_if<!(false), brpc::policy::RtmpTransactionHandler*&>::type butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::operator[]<false>(unsigned int const&) Unexecuted instantiation: std::enable_if<!(false), int&>::type butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::operator[]<false>(unsigned long const&) Unexecuted instantiation: std::enable_if<!(false), brpc::SocketMap::SingleConnection&>::type butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::operator[]<false>(brpc::SocketMapKey const&) Unexecuted instantiation: std::enable_if<!(false), mcpack2pb::MessageHandler&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) std::enable_if<!(false), unsigned long&>::type butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::operator[]<false>(brpc::HPacker::Header const&) Line | Count | Source | 592 | 14 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::operator[](const key_type& key) { | 593 | 14 | const size_t index = flatmap_mod(_hashfn(key), _nbucket); | 594 | 14 | Bucket& first_node = _buckets[index]; | 595 | | // LOG(INFO) << "index=" << index; | 596 | 14 | if (!first_node.is_valid()) { | 597 | 13 | ++_size; | 598 | 13 | if (_S) { | 599 | 0 | bit_array_set(_thumbnail, index); | 600 | 0 | } | 601 | 13 | new (&first_node) Bucket(key); | 602 | 13 | return first_node.element().second_ref(); | 603 | 13 | } | 604 | 1 | Bucket *p = &first_node; | 605 | 1 | while (true) { | 606 | 1 | if (_eql(p->element().first_ref(), key)) { | 607 | 0 | return p->element().second_ref(); | 608 | 0 | } | 609 | 1 | if (NULL == p->next) { | 610 | 1 | if (is_too_crowded(_size) && resize(_nbucket + 1)) { | 611 | 0 | return operator[](key); | 612 | 0 | } | 613 | | // Fail to resize is OK. | 614 | 1 | ++_size; | 615 | 1 | Bucket* newp = new (_pool.get()) Bucket(key); | 616 | 1 | p->next = newp; | 617 | 1 | return newp->element().second_ref(); | 618 | 1 | } | 619 | 0 | p = p->next; | 620 | 0 | } | 621 | 1 | } |
std::enable_if<!(false), unsigned long&>::type butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::operator[]<false>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) Line | Count | Source | 592 | 61 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::operator[](const key_type& key) { | 593 | 61 | const size_t index = flatmap_mod(_hashfn(key), _nbucket); | 594 | 61 | Bucket& first_node = _buckets[index]; | 595 | | // LOG(INFO) << "index=" << index; | 596 | 61 | if (!first_node.is_valid()) { | 597 | 42 | ++_size; | 598 | 42 | if (_S) { | 599 | 0 | bit_array_set(_thumbnail, index); | 600 | 0 | } | 601 | 42 | new (&first_node) Bucket(key); | 602 | 42 | return first_node.element().second_ref(); | 603 | 42 | } | 604 | 19 | Bucket *p = &first_node; | 605 | 23 | while (true) { | 606 | 23 | if (_eql(p->element().first_ref(), key)) { | 607 | 9 | return p->element().second_ref(); | 608 | 9 | } | 609 | 14 | if (NULL == p->next) { | 610 | 10 | if (is_too_crowded(_size) && resize(_nbucket + 1)) { | 611 | 0 | return operator[](key); | 612 | 0 | } | 613 | | // Fail to resize is OK. | 614 | 10 | ++_size; | 615 | 10 | Bucket* newp = new (_pool.get()) Bucket(key); | 616 | 10 | p->next = newp; | 617 | 10 | return newp->element().second_ref(); | 618 | 10 | } | 619 | 4 | p = p->next; | 620 | 4 | } | 621 | 19 | } |
|
622 | | |
623 | | template <typename _K, typename _T, typename _H, typename _E, |
624 | | bool _S, typename _A, bool _M> |
625 | | template<bool Multi> |
626 | | typename std::enable_if<Multi, _T&>::type |
627 | 26.3k | FlatMap<_K, _T, _H, _E, _S, _A, _M>::operator[](const key_type& key) { |
628 | 26.3k | const size_t index = flatmap_mod(_hashfn(key), _nbucket); |
629 | 26.3k | Bucket& first_node = _buckets[index]; |
630 | 26.3k | if (!first_node.is_valid()) { |
631 | 15.1k | ++_size; |
632 | 15.1k | if (_S) { |
633 | 0 | bit_array_set(_thumbnail, index); |
634 | 0 | } |
635 | 15.1k | new (&first_node) Bucket(key); |
636 | 15.1k | return first_node.element().second_ref(); |
637 | 15.1k | } |
638 | 11.2k | if (is_too_crowded(_size)) { |
639 | 2.39k | Bucket *p = &first_node; |
640 | 2.39k | bool need_scale = false; |
641 | 35.3k | while (NULL != p) { |
642 | | // Increase the capacity of bucket when |
643 | | // hash collision occur and map is crowded. |
644 | 33.9k | if (!_eql(p->element().first_ref(), key)) { |
645 | 972 | need_scale = true; |
646 | 972 | break; |
647 | 972 | } |
648 | 32.9k | p = p->next; |
649 | 32.9k | } |
650 | 2.39k | if (need_scale && resize(_nbucket + 1)) { |
651 | 972 | return operator[](key); |
652 | 972 | } |
653 | | // Failed resize is OK. |
654 | 2.39k | } |
655 | 10.2k | ++_size; |
656 | 10.2k | Bucket* newp = new (_pool.get()) Bucket(key); |
657 | 10.2k | newp->next = first_node.next; |
658 | 10.2k | first_node.next = newp; |
659 | 10.2k | return newp->element().second_ref(); |
660 | 11.2k | } |
661 | | |
662 | | template <typename _K, typename _T, typename _H, typename _E, |
663 | | bool _S, typename _A, bool _M> |
664 | | void FlatMap<_K, _T, _H, _E, _S, _A, _M>::save_iterator( |
665 | 0 | const const_iterator& it, PositionHint* hint) const { |
666 | 0 | hint->nbucket = _nbucket; |
667 | 0 | hint->offset = it._entry - _buckets; |
668 | 0 | if (it != end()) { |
669 | 0 | hint->at_entry = (it._entry == it._node); |
670 | 0 | hint->key = it->first; |
671 | 0 | } else { |
672 | 0 | hint->at_entry = false; |
673 | 0 | hint->key = key_type(); |
674 | 0 | } |
675 | 0 | } Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::save_iterator(butil::FlatMapIterator<butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, bvar::VarEntry> const> const&, butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::PositionHint*) const Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::save_iterator(butil::FlatMapIterator<butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>, std::pair<unsigned long const, brpc::ConnectStatistics> const> const&, butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::PositionHint*) const |
676 | | |
677 | | template <typename _K, typename _T, typename _H, typename _E, |
678 | | bool _S, typename _A, bool _M> |
679 | | typename FlatMap<_K, _T, _H, _E, _S, _A, _M>::const_iterator |
680 | | FlatMap<_K, _T, _H, _E, _S, _A, _M>::restore_iterator( |
681 | 0 | const PositionHint& hint) const { |
682 | 0 | if (hint.nbucket != _nbucket) // resized |
683 | 0 | return begin(); // restart |
684 | | |
685 | 0 | if (hint.offset >= _nbucket) // invalid hint, stop the iteration |
686 | 0 | return end(); |
687 | | |
688 | 0 | Bucket& first_node = _buckets[hint.offset]; |
689 | 0 | if (hint.at_entry) { |
690 | 0 | return const_iterator(this, hint.offset); |
691 | 0 | } |
692 | 0 | if (!first_node.is_valid()) { |
693 | | // All elements hashed to the entry were removed, try next entry. |
694 | 0 | return const_iterator(this, hint.offset + 1); |
695 | 0 | } |
696 | 0 | Bucket *p = &first_node; |
697 | 0 | do { |
698 | 0 | if (_eql(p->element().first_ref(), hint.key)) { |
699 | 0 | const_iterator it; |
700 | 0 | it._node = p; |
701 | 0 | it._entry = &first_node; |
702 | 0 | return it; |
703 | 0 | } |
704 | 0 | p = p->next; |
705 | 0 | } while (p); |
706 | | // Last element that we iterated (and saved in PositionHint) was removed, |
707 | | // don't know which element to start, just restart at the beginning of |
708 | | // the entry. Some elements in the entry may be revisited, which |
709 | | // shouldn't be often. |
710 | 0 | return const_iterator(this, hint.offset); |
711 | 0 | } Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::restore_iterator(butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::PositionHint const&) const Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::restore_iterator(butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::PositionHint const&) const |
712 | | |
713 | | template <typename _K, typename _T, typename _H, typename _E, |
714 | | bool _S, typename _A, bool _M> |
715 | | optional<typename FlatMap<_K, _T, _H, _E, _S, _A, _M>::NewBucketsInfo> |
716 | | FlatMap<_K, _T, _H, _E, _S, _A, _M>::new_buckets_and_thumbnail(size_t size, |
717 | 2.98k | size_t new_nbucket) { |
718 | 2.98k | do { |
719 | 2.98k | new_nbucket = flatmap_round(new_nbucket); |
720 | 2.98k | } while (is_too_crowded(size, new_nbucket, _load_factor)); |
721 | 2.98k | if (_nbucket == new_nbucket) { |
722 | 0 | return nullopt; |
723 | 0 | } |
724 | | // Note: need an extra bucket to let iterator know where buckets end. |
725 | 2.98k | auto buckets = (Bucket*)get_allocator().Alloc( |
726 | 2.98k | sizeof(Bucket) * (new_nbucket + 1/*note*/)); |
727 | 2.98k | auto guard = MakeScopeGuard([buckets, this]() { |
728 | 0 | get_allocator().Free(buckets); |
729 | 0 | }); Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long)::{lambda()#1}::operator()() const |
730 | 2.98k | if (NULL == buckets) { |
731 | 0 | LOG(FATAL) << "Fail to new Buckets"; |
732 | 0 | return nullopt; |
733 | 0 | } |
734 | | |
735 | 2.98k | uint64_t* thumbnail = NULL; |
736 | 2.98k | if (_S) { |
737 | 0 | thumbnail = bit_array_malloc(new_nbucket); |
738 | 0 | if (NULL == thumbnail) { |
739 | 0 | LOG(FATAL) << "Fail to new thumbnail"; |
740 | 0 | return nullopt; |
741 | 0 | } |
742 | 0 | } |
743 | | |
744 | 2.98k | guard.dismiss(); |
745 | 2.98k | init_buckets_and_thumbnail(buckets, thumbnail, new_nbucket); |
746 | 2.98k | return NewBucketsInfo{buckets, thumbnail, new_nbucket}; |
747 | 2.98k | } Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Line | Count | Source | 717 | 640 | size_t new_nbucket) { | 718 | 640 | do { | 719 | 640 | new_nbucket = flatmap_round(new_nbucket); | 720 | 640 | } while (is_too_crowded(size, new_nbucket, _load_factor)); | 721 | 640 | if (_nbucket == new_nbucket) { | 722 | 0 | return nullopt; | 723 | 0 | } | 724 | | // Note: need an extra bucket to let iterator know where buckets end. | 725 | 640 | auto buckets = (Bucket*)get_allocator().Alloc( | 726 | 640 | sizeof(Bucket) * (new_nbucket + 1/*note*/)); | 727 | 640 | auto guard = MakeScopeGuard([buckets, this]() { | 728 | 640 | get_allocator().Free(buckets); | 729 | 640 | }); | 730 | 640 | if (NULL == buckets) { | 731 | 0 | LOG(FATAL) << "Fail to new Buckets"; | 732 | 0 | return nullopt; | 733 | 0 | } | 734 | | | 735 | 640 | uint64_t* thumbnail = NULL; | 736 | 640 | if (_S) { | 737 | 0 | thumbnail = bit_array_malloc(new_nbucket); | 738 | 0 | if (NULL == thumbnail) { | 739 | 0 | LOG(FATAL) << "Fail to new thumbnail"; | 740 | 0 | return nullopt; | 741 | 0 | } | 742 | 0 | } | 743 | | | 744 | 640 | guard.dismiss(); | 745 | 640 | init_buckets_and_thumbnail(buckets, thumbnail, new_nbucket); | 746 | 640 | return NewBucketsInfo{buckets, thumbnail, new_nbucket}; | 747 | 640 | } |
Unexecuted instantiation: butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::new_buckets_and_thumbnail(unsigned long, unsigned long) Line | Count | Source | 717 | 972 | size_t new_nbucket) { | 718 | 972 | do { | 719 | 972 | new_nbucket = flatmap_round(new_nbucket); | 720 | 972 | } while (is_too_crowded(size, new_nbucket, _load_factor)); | 721 | 972 | if (_nbucket == new_nbucket) { | 722 | 0 | return nullopt; | 723 | 0 | } | 724 | | // Note: need an extra bucket to let iterator know where buckets end. | 725 | 972 | auto buckets = (Bucket*)get_allocator().Alloc( | 726 | 972 | sizeof(Bucket) * (new_nbucket + 1/*note*/)); | 727 | 972 | auto guard = MakeScopeGuard([buckets, this]() { | 728 | 972 | get_allocator().Free(buckets); | 729 | 972 | }); | 730 | 972 | if (NULL == buckets) { | 731 | 0 | LOG(FATAL) << "Fail to new Buckets"; | 732 | 0 | return nullopt; | 733 | 0 | } | 734 | | | 735 | 972 | uint64_t* thumbnail = NULL; | 736 | 972 | if (_S) { | 737 | 0 | thumbnail = bit_array_malloc(new_nbucket); | 738 | 0 | if (NULL == thumbnail) { | 739 | 0 | LOG(FATAL) << "Fail to new thumbnail"; | 740 | 0 | return nullopt; | 741 | 0 | } | 742 | 0 | } | 743 | | | 744 | 972 | guard.dismiss(); | 745 | 972 | init_buckets_and_thumbnail(buckets, thumbnail, new_nbucket); | 746 | 972 | return NewBucketsInfo{buckets, thumbnail, new_nbucket}; | 747 | 972 | } |
Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Line | Count | Source | 717 | 686 | size_t new_nbucket) { | 718 | 686 | do { | 719 | 686 | new_nbucket = flatmap_round(new_nbucket); | 720 | 686 | } while (is_too_crowded(size, new_nbucket, _load_factor)); | 721 | 686 | if (_nbucket == new_nbucket) { | 722 | 0 | return nullopt; | 723 | 0 | } | 724 | | // Note: need an extra bucket to let iterator know where buckets end. | 725 | 686 | auto buckets = (Bucket*)get_allocator().Alloc( | 726 | 686 | sizeof(Bucket) * (new_nbucket + 1/*note*/)); | 727 | 686 | auto guard = MakeScopeGuard([buckets, this]() { | 728 | 686 | get_allocator().Free(buckets); | 729 | 686 | }); | 730 | 686 | if (NULL == buckets) { | 731 | 0 | LOG(FATAL) << "Fail to new Buckets"; | 732 | 0 | return nullopt; | 733 | 0 | } | 734 | | | 735 | 686 | uint64_t* thumbnail = NULL; | 736 | 686 | if (_S) { | 737 | 0 | thumbnail = bit_array_malloc(new_nbucket); | 738 | 0 | if (NULL == thumbnail) { | 739 | 0 | LOG(FATAL) << "Fail to new thumbnail"; | 740 | 0 | return nullopt; | 741 | 0 | } | 742 | 0 | } | 743 | | | 744 | 686 | guard.dismiss(); | 745 | 686 | init_buckets_and_thumbnail(buckets, thumbnail, new_nbucket); | 746 | 686 | return NewBucketsInfo{buckets, thumbnail, new_nbucket}; | 747 | 686 | } |
butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::new_buckets_and_thumbnail(unsigned long, unsigned long) Line | Count | Source | 717 | 686 | size_t new_nbucket) { | 718 | 686 | do { | 719 | 686 | new_nbucket = flatmap_round(new_nbucket); | 720 | 686 | } while (is_too_crowded(size, new_nbucket, _load_factor)); | 721 | 686 | if (_nbucket == new_nbucket) { | 722 | 0 | return nullopt; | 723 | 0 | } | 724 | | // Note: need an extra bucket to let iterator know where buckets end. | 725 | 686 | auto buckets = (Bucket*)get_allocator().Alloc( | 726 | 686 | sizeof(Bucket) * (new_nbucket + 1/*note*/)); | 727 | 686 | auto guard = MakeScopeGuard([buckets, this]() { | 728 | 686 | get_allocator().Free(buckets); | 729 | 686 | }); | 730 | 686 | if (NULL == buckets) { | 731 | 0 | LOG(FATAL) << "Fail to new Buckets"; | 732 | 0 | return nullopt; | 733 | 0 | } | 734 | | | 735 | 686 | uint64_t* thumbnail = NULL; | 736 | 686 | if (_S) { | 737 | 0 | thumbnail = bit_array_malloc(new_nbucket); | 738 | 0 | if (NULL == thumbnail) { | 739 | 0 | LOG(FATAL) << "Fail to new thumbnail"; | 740 | 0 | return nullopt; | 741 | 0 | } | 742 | 0 | } | 743 | | | 744 | 686 | guard.dismiss(); | 745 | 686 | init_buckets_and_thumbnail(buckets, thumbnail, new_nbucket); | 746 | 686 | return NewBucketsInfo{buckets, thumbnail, new_nbucket}; | 747 | 686 | } |
|
748 | | |
749 | | template <typename _K, typename _T, typename _H, typename _E, |
750 | | bool _S, typename _A, bool _M> |
751 | 2.98k | bool FlatMap<_K, _T, _H, _E, _S, _A, _M>::resize(size_t nbucket) { |
752 | 2.98k | optional<NewBucketsInfo> info = new_buckets_and_thumbnail(_size, nbucket); |
753 | 2.98k | if (!info.has_value()) { |
754 | 0 | return false; |
755 | 0 | } |
756 | | |
757 | 25.1k | for (iterator it = begin(); it != end(); ++it) { |
758 | 22.2k | const key_type& key = Element::first_ref_from_value(*it); |
759 | 22.2k | const size_t index = flatmap_mod(_hashfn(key), info->nbucket); |
760 | 22.2k | Bucket& first_node = info->buckets[index]; |
761 | 22.2k | if (!first_node.is_valid()) { |
762 | 16.1k | if (_S) { |
763 | 0 | bit_array_set(info->thumbnail, index); |
764 | 0 | } |
765 | 16.1k | new (&first_node) Bucket(key); |
766 | 16.1k | first_node.element().second_ref() = |
767 | 16.1k | Element::second_movable_ref_from_value(*it); |
768 | 16.1k | } else { |
769 | 6.09k | Bucket* newp = new (_pool.get()) Bucket(key); |
770 | 6.09k | newp->element().second_ref() = |
771 | 6.09k | Element::second_movable_ref_from_value(*it); |
772 | 6.09k | newp->next = first_node.next; |
773 | 6.09k | first_node.next = newp; |
774 | 6.09k | } |
775 | 22.2k | } |
776 | 2.98k | size_t saved_size = _size; |
777 | 2.98k | clear(); |
778 | 2.98k | if (!is_default_buckets()) { |
779 | 302 | get_allocator().Free(_buckets); |
780 | 302 | if (_S) { |
781 | 0 | bit_array_free(_thumbnail); |
782 | 0 | } |
783 | 302 | } |
784 | 2.98k | _nbucket = info->nbucket; |
785 | 2.98k | _buckets = info->buckets; |
786 | 2.98k | _thumbnail = info->thumbnail; |
787 | 2.98k | _size = saved_size; |
788 | | |
789 | 2.98k | return true; |
790 | 2.98k | } Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::resize(unsigned long) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::resize(unsigned long) Line | Count | Source | 751 | 640 | bool FlatMap<_K, _T, _H, _E, _S, _A, _M>::resize(size_t nbucket) { | 752 | 640 | optional<NewBucketsInfo> info = new_buckets_and_thumbnail(_size, nbucket); | 753 | 640 | if (!info.has_value()) { | 754 | 0 | return false; | 755 | 0 | } | 756 | | | 757 | 640 | for (iterator it = begin(); it != end(); ++it) { | 758 | 0 | const key_type& key = Element::first_ref_from_value(*it); | 759 | 0 | const size_t index = flatmap_mod(_hashfn(key), info->nbucket); | 760 | 0 | Bucket& first_node = info->buckets[index]; | 761 | 0 | if (!first_node.is_valid()) { | 762 | 0 | if (_S) { | 763 | 0 | bit_array_set(info->thumbnail, index); | 764 | 0 | } | 765 | 0 | new (&first_node) Bucket(key); | 766 | 0 | first_node.element().second_ref() = | 767 | 0 | Element::second_movable_ref_from_value(*it); | 768 | 0 | } else { | 769 | 0 | Bucket* newp = new (_pool.get()) Bucket(key); | 770 | 0 | newp->element().second_ref() = | 771 | 0 | Element::second_movable_ref_from_value(*it); | 772 | 0 | newp->next = first_node.next; | 773 | 0 | first_node.next = newp; | 774 | 0 | } | 775 | 0 | } | 776 | 640 | size_t saved_size = _size; | 777 | 640 | clear(); | 778 | 640 | if (!is_default_buckets()) { | 779 | 0 | get_allocator().Free(_buckets); | 780 | 0 | if (_S) { | 781 | 0 | bit_array_free(_thumbnail); | 782 | 0 | } | 783 | 0 | } | 784 | 640 | _nbucket = info->nbucket; | 785 | 640 | _buckets = info->buckets; | 786 | 640 | _thumbnail = info->thumbnail; | 787 | 640 | _size = saved_size; | 788 | | | 789 | 640 | return true; | 790 | 640 | } |
Unexecuted instantiation: butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::resize(unsigned long) butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::resize(unsigned long) Line | Count | Source | 751 | 972 | bool FlatMap<_K, _T, _H, _E, _S, _A, _M>::resize(size_t nbucket) { | 752 | 972 | optional<NewBucketsInfo> info = new_buckets_and_thumbnail(_size, nbucket); | 753 | 972 | if (!info.has_value()) { | 754 | 0 | return false; | 755 | 0 | } | 756 | | | 757 | 23.1k | for (iterator it = begin(); it != end(); ++it) { | 758 | 22.2k | const key_type& key = Element::first_ref_from_value(*it); | 759 | 22.2k | const size_t index = flatmap_mod(_hashfn(key), info->nbucket); | 760 | 22.2k | Bucket& first_node = info->buckets[index]; | 761 | 22.2k | if (!first_node.is_valid()) { | 762 | 16.1k | if (_S) { | 763 | 0 | bit_array_set(info->thumbnail, index); | 764 | 0 | } | 765 | 16.1k | new (&first_node) Bucket(key); | 766 | 16.1k | first_node.element().second_ref() = | 767 | 16.1k | Element::second_movable_ref_from_value(*it); | 768 | 16.1k | } else { | 769 | 6.09k | Bucket* newp = new (_pool.get()) Bucket(key); | 770 | 6.09k | newp->element().second_ref() = | 771 | 6.09k | Element::second_movable_ref_from_value(*it); | 772 | 6.09k | newp->next = first_node.next; | 773 | 6.09k | first_node.next = newp; | 774 | 6.09k | } | 775 | 22.2k | } | 776 | 972 | size_t saved_size = _size; | 777 | 972 | clear(); | 778 | 972 | if (!is_default_buckets()) { | 779 | 302 | get_allocator().Free(_buckets); | 780 | 302 | if (_S) { | 781 | 0 | bit_array_free(_thumbnail); | 782 | 0 | } | 783 | 302 | } | 784 | 972 | _nbucket = info->nbucket; | 785 | 972 | _buckets = info->buckets; | 786 | 972 | _thumbnail = info->thumbnail; | 787 | 972 | _size = saved_size; | 788 | | | 789 | 972 | return true; | 790 | 972 | } |
Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::resize(unsigned long) Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::resize(unsigned long) butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::resize(unsigned long) Line | Count | Source | 751 | 686 | bool FlatMap<_K, _T, _H, _E, _S, _A, _M>::resize(size_t nbucket) { | 752 | 686 | optional<NewBucketsInfo> info = new_buckets_and_thumbnail(_size, nbucket); | 753 | 686 | if (!info.has_value()) { | 754 | 0 | return false; | 755 | 0 | } | 756 | | | 757 | 686 | for (iterator it = begin(); it != end(); ++it) { | 758 | 0 | const key_type& key = Element::first_ref_from_value(*it); | 759 | 0 | const size_t index = flatmap_mod(_hashfn(key), info->nbucket); | 760 | 0 | Bucket& first_node = info->buckets[index]; | 761 | 0 | if (!first_node.is_valid()) { | 762 | 0 | if (_S) { | 763 | 0 | bit_array_set(info->thumbnail, index); | 764 | 0 | } | 765 | 0 | new (&first_node) Bucket(key); | 766 | 0 | first_node.element().second_ref() = | 767 | 0 | Element::second_movable_ref_from_value(*it); | 768 | 0 | } else { | 769 | 0 | Bucket* newp = new (_pool.get()) Bucket(key); | 770 | 0 | newp->element().second_ref() = | 771 | 0 | Element::second_movable_ref_from_value(*it); | 772 | 0 | newp->next = first_node.next; | 773 | 0 | first_node.next = newp; | 774 | 0 | } | 775 | 0 | } | 776 | 686 | size_t saved_size = _size; | 777 | 686 | clear(); | 778 | 686 | if (!is_default_buckets()) { | 779 | 0 | get_allocator().Free(_buckets); | 780 | 0 | if (_S) { | 781 | 0 | bit_array_free(_thumbnail); | 782 | 0 | } | 783 | 0 | } | 784 | 686 | _nbucket = info->nbucket; | 785 | 686 | _buckets = info->buckets; | 786 | 686 | _thumbnail = info->thumbnail; | 787 | 686 | _size = saved_size; | 788 | | | 789 | 686 | return true; | 790 | 686 | } |
butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::resize(unsigned long) Line | Count | Source | 751 | 686 | bool FlatMap<_K, _T, _H, _E, _S, _A, _M>::resize(size_t nbucket) { | 752 | 686 | optional<NewBucketsInfo> info = new_buckets_and_thumbnail(_size, nbucket); | 753 | 686 | if (!info.has_value()) { | 754 | 0 | return false; | 755 | 0 | } | 756 | | | 757 | 686 | for (iterator it = begin(); it != end(); ++it) { | 758 | 0 | const key_type& key = Element::first_ref_from_value(*it); | 759 | 0 | const size_t index = flatmap_mod(_hashfn(key), info->nbucket); | 760 | 0 | Bucket& first_node = info->buckets[index]; | 761 | 0 | if (!first_node.is_valid()) { | 762 | 0 | if (_S) { | 763 | 0 | bit_array_set(info->thumbnail, index); | 764 | 0 | } | 765 | 0 | new (&first_node) Bucket(key); | 766 | 0 | first_node.element().second_ref() = | 767 | 0 | Element::second_movable_ref_from_value(*it); | 768 | 0 | } else { | 769 | 0 | Bucket* newp = new (_pool.get()) Bucket(key); | 770 | 0 | newp->element().second_ref() = | 771 | 0 | Element::second_movable_ref_from_value(*it); | 772 | 0 | newp->next = first_node.next; | 773 | 0 | first_node.next = newp; | 774 | 0 | } | 775 | 0 | } | 776 | 686 | size_t saved_size = _size; | 777 | 686 | clear(); | 778 | 686 | if (!is_default_buckets()) { | 779 | 0 | get_allocator().Free(_buckets); | 780 | 0 | if (_S) { | 781 | 0 | bit_array_free(_thumbnail); | 782 | 0 | } | 783 | 0 | } | 784 | 686 | _nbucket = info->nbucket; | 785 | 686 | _buckets = info->buckets; | 786 | 686 | _thumbnail = info->thumbnail; | 787 | 686 | _size = saved_size; | 788 | | | 789 | 686 | return true; | 790 | 686 | } |
|
791 | | |
792 | | template <typename _K, typename _T, typename _H, typename _E, |
793 | | bool _S, typename _A, bool _M> |
794 | | BucketInfo FlatMap<_K, _T, _H, _E, _S, _A, _M>::bucket_info() const { |
795 | | size_t max_n = 0; |
796 | | size_t nentry = 0; |
797 | | for (size_t i = 0; i < _nbucket; ++i) { |
798 | | if (_buckets[i].is_valid()) { |
799 | | size_t n = 1; |
800 | | for (Bucket* p = _buckets[i].next; p; p = p->next, ++n); |
801 | | max_n = std::max(max_n, n); |
802 | | ++nentry; |
803 | | } |
804 | | } |
805 | | return { max_n, size() / (double)nentry }; |
806 | | } |
807 | | |
808 | 0 | inline std::ostream& operator<<(std::ostream& os, const BucketInfo& info) { |
809 | 0 | return os << "{maxb=" << info.longest_length |
810 | 0 | << " avgb=" << info.average_length << '}'; |
811 | 0 | } |
812 | | |
813 | | template <typename _K, typename _T, typename _H, typename _E, |
814 | | bool _S, typename _A, bool _M> |
815 | | typename FlatMap<_K, _T, _H, _E, _S, _A, _M>::iterator |
816 | 2.98k | FlatMap<_K, _T, _H, _E, _S, _A, _M>::begin() { |
817 | 2.98k | return iterator(this, 0); |
818 | 2.98k | } Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::begin() butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() Line | Count | Source | 816 | 640 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::begin() { | 817 | 640 | return iterator(this, 0); | 818 | 640 | } |
Unexecuted instantiation: butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::begin() butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::begin() Line | Count | Source | 816 | 972 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::begin() { | 817 | 972 | return iterator(this, 0); | 818 | 972 | } |
Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::begin() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::begin() Line | Count | Source | 816 | 686 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::begin() { | 817 | 686 | return iterator(this, 0); | 818 | 686 | } |
butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::begin() Line | Count | Source | 816 | 686 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::begin() { | 817 | 686 | return iterator(this, 0); | 818 | 686 | } |
|
819 | | |
820 | | template <typename _K, typename _T, typename _H, typename _E, |
821 | | bool _S, typename _A, bool _M> |
822 | | typename FlatMap<_K, _T, _H, _E, _S, _A, _M>::iterator |
823 | 25.1k | FlatMap<_K, _T, _H, _E, _S, _A, _M>::end() { |
824 | 25.1k | return iterator(this, _nbucket); |
825 | 25.1k | } Unexecuted instantiation: butil::FlatMap<bthread::SampledContention*, bthread::SampledContention*, bthread::ContentionHash, bthread::ContentionEqual, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<butil::IOBuf::Block*, butil::IOBufProfiler::BlockInfo, butil::DefaultHasher<butil::IOBuf::Block*>, butil::DefaultEqualTo<butil::IOBuf::Block*>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<butil::IOBufSample*, std::shared_ptr<butil::IOBufSample>, butil::detail::IOBufSampleHash<butil::IOBufSample*>, butil::detail::IOBufSampleEqual<butil::IOBufSample*>, false, butil::PtAllocator, false>::end() butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() Line | Count | Source | 823 | 640 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::end() { | 824 | 640 | return iterator(this, _nbucket); | 825 | 640 | } |
Unexecuted instantiation: butil::FlatMap<int, bthread::TaskGroup*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::MVarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::LoadBalancer const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::NamingService const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::MethodProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::DisplayType, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<brpc::NSKey, brpc::NamingServiceThread*, brpc::NSKeyHasher, butil::DefaultEqualTo<brpc::NSKey>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::ConcurrencyLimiter const*, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::end() butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::end() Line | Count | Source | 823 | 23.1k | FlatMap<_K, _T, _H, _E, _S, _A, _M>::end() { | 824 | 23.1k | return iterator(this, _nbucket); | 825 | 23.1k | } |
Unexecuted instantiation: butil::FlatMap<brpc::ServerId, butil::FlatMapVoid, butil::DefaultHasher<brpc::ServerId>, butil::DefaultEqualTo<brpc::ServerId>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<int, brpc::policy::H2StreamContext*, butil::DefaultHasher<int>, butil::DefaultEqualTo<int>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool (brpc::policy::RtmpChunkStream::*)(brpc::policy::RtmpMessageHeader const&, brpc::AMFInputStream*, brpc::Socket*), butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpContext::MessageStreamInfo, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<unsigned int, brpc::policy::RtmpTransactionHandler*, butil::DefaultHasher<unsigned int>, butil::DefaultEqualTo<unsigned int>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<unsigned long, int, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<brpc::SocketMapKey, brpc::SocketMap::SingleConnection, brpc::SocketMapKeyHasher, butil::DefaultEqualTo<brpc::SocketMapKey>, false, butil::PtAllocator, false>::end() Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mcpack2pb::MessageHandler, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() butil::FlatMap<brpc::HPacker::Header, unsigned long, brpc::HeaderHasher, brpc::HeaderEqualTo, false, butil::PtAllocator, false>::end() Line | Count | Source | 823 | 686 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::end() { | 824 | 686 | return iterator(this, _nbucket); | 825 | 686 | } |
butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned long, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::end() Line | Count | Source | 823 | 686 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::end() { | 824 | 686 | return iterator(this, _nbucket); | 825 | 686 | } |
|
826 | | |
827 | | template <typename _K, typename _T, typename _H, typename _E, |
828 | | bool _S, typename _A, bool _M> |
829 | | typename FlatMap<_K, _T, _H, _E, _S, _A, _M>::const_iterator |
830 | 0 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::begin() const { |
831 | 0 | return const_iterator(this, 0); |
832 | 0 | } Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::begin() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::begin() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::begin() const Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::begin() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::begin() const Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::begin() const |
833 | | |
834 | | template <typename _K, typename _T, typename _H, typename _E, |
835 | | bool _S, typename _A, bool _M> |
836 | | typename FlatMap<_K, _T, _H, _E, _S, _A, _M>::const_iterator |
837 | 0 | FlatMap<_K, _T, _H, _E, _S, _A, _M>::end() const { |
838 | 0 | return const_iterator(this, _nbucket); |
839 | 0 | } Unexecuted instantiation: butil::FlatMap<std::shared_ptr<butil::IOBufSample>, long, butil::detail::IOBufSampleHash<std::shared_ptr<butil::IOBufSample> >, butil::detail::IOBufSampleEqual<std::shared_ptr<butil::IOBufSample> >, false, butil::PtAllocator, false>::end() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bvar::VarEntry, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, true>::end() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::SSLContext, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<brpc::SocketSSLContext>, butil::CaseIgnoredHasher, butil::CaseIgnoredEqual, false, butil::PtAllocator, false>::end() const Unexecuted instantiation: butil::FlatMap<unsigned long, brpc::ConnectStatistics, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::end() const Unexecuted instantiation: butil::FlatMap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, brpc::Server::ServiceProperty, butil::DefaultHasher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, butil::DefaultEqualTo<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, false, butil::PtAllocator, false>::end() const Unexecuted instantiation: butil::FlatMap<unsigned long, unsigned long, butil::DefaultHasher<unsigned long>, butil::DefaultEqualTo<unsigned long>, false, butil::PtAllocator, false>::end() const |
840 | | |
841 | | } // namespace butil |
842 | | |
843 | | #endif //BUTIL_FLAT_MAP_INL_H |