bloaty/third_party/protobuf/src/google/protobuf/reflection.h
Go to the documentation of this file.
1 // Protocol Buffers - Google's data interchange format
2 // Copyright 2008 Google Inc. All rights reserved.
3 // https://developers.google.com/protocol-buffers/
4 //
5 // Redistribution and use in source and binary forms, with or without
6 // modification, are permitted provided that the following conditions are
7 // met:
8 //
9 // * Redistributions of source code must retain the above copyright
10 // notice, this list of conditions and the following disclaimer.
11 // * Redistributions in binary form must reproduce the above
12 // copyright notice, this list of conditions and the following disclaimer
13 // in the documentation and/or other materials provided with the
14 // distribution.
15 // * Neither the name of Google Inc. nor the names of its
16 // contributors may be used to endorse or promote products derived from
17 // this software without specific prior written permission.
18 //
19 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 
31 // This header defines the RepeatedFieldRef class template used to access
32 // repeated fields with protobuf reflection API.
33 #ifndef GOOGLE_PROTOBUF_REFLECTION_H__
34 #define GOOGLE_PROTOBUF_REFLECTION_H__
35 
36 #include <memory>
37 
38 #include <google/protobuf/message.h>
39 #include <google/protobuf/generated_enum_util.h>
40 
41 #ifdef SWIG
42 #error "You cannot SWIG proto headers"
43 #endif
44 
45 #include <google/protobuf/port_def.inc>
46 
47 namespace google {
48 namespace protobuf {
49 namespace internal {
50 template <typename T, typename Enable = void>
52 } // namespace internal
53 
54 template <typename T>
56  const Message& message, const FieldDescriptor* field) const {
58 }
59 
60 template <typename T>
62  Message* message, const FieldDescriptor* field) const {
64 }
65 
66 // RepeatedFieldRef definition for non-message types.
67 template <typename T>
69  T, typename std::enable_if<!std::is_base_of<Message, T>::value>::type> {
72 
73  public:
74  bool empty() const { return accessor_->IsEmpty(data_); }
75  int size() const { return accessor_->Size(data_); }
76  T Get(int index) const { return accessor_->template Get<T>(data_, index); }
77 
80  typedef T value_type;
81  typedef T& reference;
82  typedef const T& const_reference;
83  typedef int size_type;
84  typedef ptrdiff_t difference_type;
85 
86  iterator begin() const { return iterator(data_, accessor_, true); }
87  iterator end() const { return iterator(data_, accessor_, false); }
88 
89  private:
90  friend class Reflection;
92  const Reflection* reflection = message.GetReflection();
93  data_ = reflection->RepeatedFieldData(const_cast<Message*>(&message), field,
95  NULL);
96  accessor_ = reflection->RepeatedFieldAccessor(field);
97  }
98 
99  const void* data_;
101 };
102 
103 // MutableRepeatedFieldRef definition for non-message types.
104 template <typename T>
106  T, typename std::enable_if<!std::is_base_of<Message, T>::value>::type> {
108 
109  public:
110  bool empty() const { return accessor_->IsEmpty(data_); }
111  int size() const { return accessor_->Size(data_); }
112  T Get(int index) const { return accessor_->template Get<T>(data_, index); }
113 
114  void Set(int index, const T& value) const {
115  accessor_->template Set<T>(data_, index, value);
116  }
117  void Add(const T& value) const { accessor_->template Add<T>(data_, value); }
118  void RemoveLast() const { accessor_->RemoveLast(data_); }
119  void SwapElements(int index1, int index2) const {
120  accessor_->SwapElements(data_, index1, index2);
121  }
122  void Clear() const { accessor_->Clear(data_); }
123 
124  void Swap(const MutableRepeatedFieldRef& other) const {
125  accessor_->Swap(data_, other.accessor_, other.data_);
126  }
127 
128  template <typename Container>
129  void MergeFrom(const Container& container) const {
130  typedef typename Container::const_iterator Iterator;
131  for (Iterator it = container.begin(); it != container.end(); ++it) {
132  Add(*it);
133  }
134  }
135  template <typename Container>
136  void CopyFrom(const Container& container) const {
137  Clear();
139  }
140 
141  private:
142  friend class Reflection;
144  const Reflection* reflection = message->GetReflection();
145  data_ = reflection->RepeatedFieldData(
147  accessor_ = reflection->RepeatedFieldAccessor(field);
148  }
149 
150  void* data_;
152 };
153 
154 // RepeatedFieldRef definition for message types.
155 template <typename T>
157  T, typename std::enable_if<std::is_base_of<Message, T>::value>::type> {
160 
161  public:
162  bool empty() const { return accessor_->IsEmpty(data_); }
163  int size() const { return accessor_->Size(data_); }
164  // This method returns a reference to the underlying message object if it
165  // exists. If a message object doesn't exist (e.g., data stored in serialized
166  // form), scratch_space will be filled with the data and a reference to it
167  // will be returned.
168  //
169  // Example:
170  // RepeatedFieldRef<Message> h = ...
171  // unique_ptr<Message> scratch_space(h.NewMessage());
172  // const Message& item = h.Get(index, scratch_space.get());
173  const T& Get(int index, T* scratch_space) const {
174  return *static_cast<const T*>(accessor_->Get(data_, index, scratch_space));
175  }
176  // Create a new message of the same type as the messages stored in this
177  // repeated field. Caller takes ownership of the returned object.
178  T* NewMessage() const { return static_cast<T*>(default_instance_->New()); }
179 
182  typedef T value_type;
183  typedef T& reference;
184  typedef const T& const_reference;
185  typedef int size_type;
186  typedef ptrdiff_t difference_type;
187 
188  iterator begin() const {
189  return iterator(data_, accessor_, true, NewMessage());
190  }
191  iterator end() const {
192  // The end iterator must not be dereferenced, no need for scratch space.
193  return iterator(data_, accessor_, false, nullptr);
194  }
195 
196  private:
197  friend class Reflection;
199  const Reflection* reflection = message.GetReflection();
200  data_ = reflection->RepeatedFieldData(
201  const_cast<Message*>(&message), field,
204  accessor_ = reflection->RepeatedFieldAccessor(field);
205  default_instance_ =
206  reflection->GetMessageFactory()->GetPrototype(field->message_type());
207  }
208 
209  const void* data_;
212 };
213 
214 // MutableRepeatedFieldRef definition for message types.
215 template <typename T>
217  T, typename std::enable_if<std::is_base_of<Message, T>::value>::type> {
219 
220  public:
221  bool empty() const { return accessor_->IsEmpty(data_); }
222  int size() const { return accessor_->Size(data_); }
223  // See comments for RepeatedFieldRef<Message>::Get()
224  const T& Get(int index, T* scratch_space) const {
225  return *static_cast<const T*>(accessor_->Get(data_, index, scratch_space));
226  }
227  // Create a new message of the same type as the messages stored in this
228  // repeated field. Caller takes ownership of the returned object.
229  T* NewMessage() const { return static_cast<T*>(default_instance_->New()); }
230 
231  void Set(int index, const T& value) const {
232  accessor_->Set(data_, index, &value);
233  }
234  void Add(const T& value) const { accessor_->Add(data_, &value); }
235  void RemoveLast() const { accessor_->RemoveLast(data_); }
236  void SwapElements(int index1, int index2) const {
237  accessor_->SwapElements(data_, index1, index2);
238  }
239  void Clear() const { accessor_->Clear(data_); }
240 
241  void Swap(const MutableRepeatedFieldRef& other) const {
242  accessor_->Swap(data_, other.accessor_, other.data_);
243  }
244 
245  template <typename Container>
246  void MergeFrom(const Container& container) const {
247  typedef typename Container::const_iterator Iterator;
248  for (Iterator it = container.begin(); it != container.end(); ++it) {
249  Add(*it);
250  }
251  }
252  template <typename Container>
253  void CopyFrom(const Container& container) const {
254  Clear();
256  }
257 
258  private:
259  friend class Reflection;
261  const Reflection* reflection = message->GetReflection();
262  data_ = reflection->RepeatedFieldData(
265  accessor_ = reflection->RepeatedFieldAccessor(field);
266  default_instance_ =
267  reflection->GetMessageFactory()->GetPrototype(field->message_type());
268  }
269 
270  void* data_;
273 };
274 
275 namespace internal {
276 // Interfaces used to implement reflection RepeatedFieldRef API.
277 // Reflection::GetRepeatedAccessor() should return a pointer to an singleton
278 // object that implements the below interface.
279 //
280 // This interface passes/returns values using void pointers. The actual type
281 // of the value depends on the field's cpp_type. Following is a mapping from
282 // cpp_type to the type that should be used in this interface:
283 //
284 // field->cpp_type() T Actual type of void*
285 // CPPTYPE_INT32 int32 int32
286 // CPPTYPE_UINT32 uint32 uint32
287 // CPPTYPE_INT64 int64 int64
288 // CPPTYPE_UINT64 uint64 uint64
289 // CPPTYPE_DOUBLE double double
290 // CPPTYPE_FLOAT float float
291 // CPPTYPE_BOOL bool bool
292 // CPPTYPE_ENUM generated enum type int32
293 // CPPTYPE_STRING string std::string
294 // CPPTYPE_MESSAGE generated message type google::protobuf::Message
295 // or google::protobuf::Message
296 //
297 // Note that for enums we use int32 in the interface.
298 //
299 // You can map from T to the actual type using RefTypeTraits:
300 // typedef RefTypeTraits<T>::AccessorValueType ActualType;
301 class PROTOBUF_EXPORT RepeatedFieldAccessor {
302  public:
303  // Typedefs for clarity.
304  typedef void Field;
305  typedef void Value;
306  typedef void Iterator;
307 
308  virtual bool IsEmpty(const Field* data) const = 0;
309  virtual int Size(const Field* data) const = 0;
310  // Depends on the underlying representation of the repeated field, this
311  // method can return a pointer to the underlying object if such an object
312  // exists, or fill the data into scratch_space and return scratch_space.
313  // Callers of this method must ensure scratch_space is a valid pointer
314  // to a mutable object of the correct type.
315  virtual const Value* Get(const Field* data, int index,
316  Value* scratch_space) const = 0;
317 
318  virtual void Clear(Field* data) const = 0;
319  virtual void Set(Field* data, int index, const Value* value) const = 0;
320  virtual void Add(Field* data, const Value* value) const = 0;
321  virtual void RemoveLast(Field* data) const = 0;
322  virtual void SwapElements(Field* data, int index1, int index2) const = 0;
323  virtual void Swap(Field* data, const RepeatedFieldAccessor* other_mutator,
324  Field* other_data) const = 0;
325 
326  // Create an iterator that points at the beginning of the repeated field.
327  virtual Iterator* BeginIterator(const Field* data) const = 0;
328  // Create an iterator that points at the end of the repeated field.
329  virtual Iterator* EndIterator(const Field* data) const = 0;
330  // Make a copy of an iterator and return the new copy.
331  virtual Iterator* CopyIterator(const Field* data,
332  const Iterator* iterator) const = 0;
333  // Move an iterator to point to the next element.
334  virtual Iterator* AdvanceIterator(const Field* data,
335  Iterator* iterator) const = 0;
336  // Compare whether two iterators point to the same element.
337  virtual bool EqualsIterator(const Field* data, const Iterator* a,
338  const Iterator* b) const = 0;
339  // Delete an iterator created by BeginIterator(), EndIterator() and
340  // CopyIterator().
341  virtual void DeleteIterator(const Field* data, Iterator* iterator) const = 0;
342  // Like Get() but for iterators.
343  virtual const Value* GetIteratorValue(const Field* data,
344  const Iterator* iterator,
345  Value* scratch_space) const = 0;
346 
347  // Templated methods that make using this interface easier for non-message
348  // types.
349  template <typename T>
350  T Get(const Field* data, int index) const {
351  typedef typename RefTypeTraits<T>::AccessorValueType ActualType;
352  ActualType scratch_space;
353  return static_cast<T>(*reinterpret_cast<const ActualType*>(
354  Get(data, index, static_cast<Value*>(&scratch_space))));
355  }
356 
357  template <typename T, typename ValueType>
358  void Set(Field* data, int index, const ValueType& value) const {
359  typedef typename RefTypeTraits<T>::AccessorValueType ActualType;
360  // In this RepeatedFieldAccessor interface we pass/return data using
361  // raw pointers. Type of the data these raw pointers point to should
362  // be ActualType. Here we have a ValueType object and want a ActualType
363  // pointer. We can't cast a ValueType pointer to an ActualType pointer
364  // directly because their type might be different (for enums ValueType
365  // may be a generated enum type while ActualType is int32). To be safe
366  // we make a copy to get a temporary ActualType object and use it.
367  ActualType tmp = static_cast<ActualType>(value);
368  Set(data, index, static_cast<const Value*>(&tmp));
369  }
370 
371  template <typename T, typename ValueType>
372  void Add(Field* data, const ValueType& value) const {
373  typedef typename RefTypeTraits<T>::AccessorValueType ActualType;
374  // In this RepeatedFieldAccessor interface we pass/return data using
375  // raw pointers. Type of the data these raw pointers point to should
376  // be ActualType. Here we have a ValueType object and want a ActualType
377  // pointer. We can't cast a ValueType pointer to an ActualType pointer
378  // directly because their type might be different (for enums ValueType
379  // may be a generated enum type while ActualType is int32). To be safe
380  // we make a copy to get a temporary ActualType object and use it.
381  ActualType tmp = static_cast<ActualType>(value);
382  Add(data, static_cast<const Value*>(&tmp));
383  }
384 
385  protected:
386  // We want the destructor to be completely trivial as to allow it to be
387  // a function local static. Hence we make it non-virtual and protected,
388  // this class only live as part of a global singleton and should not be
389  // deleted.
390  ~RepeatedFieldAccessor() = default;
391 };
392 
393 // Implement (Mutable)RepeatedFieldRef::iterator
394 template <typename T>
396  : public std::iterator<std::forward_iterator_tag, T> {
400 
401  public:
402  // Constructor for non-message fields.
404  const RepeatedFieldAccessor* accessor, bool begin)
405  : data_(data),
406  accessor_(accessor),
407  iterator_(begin ? accessor->BeginIterator(data)
408  : accessor->EndIterator(data)),
409  // The end iterator must not be dereferenced, no need for scratch space.
410  scratch_space_(begin ? new AccessorValueType : nullptr) {}
411  // Constructor for message fields.
413  const RepeatedFieldAccessor* accessor, bool begin,
414  AccessorValueType* scratch_space)
415  : data_(data),
416  accessor_(accessor),
417  iterator_(begin ? accessor->BeginIterator(data)
418  : accessor->EndIterator(data)),
419  scratch_space_(scratch_space) {}
424  return tmp;
425  }
428  return *this;
429  }
431  return static_cast<IteratorValueType>(
432  *static_cast<const AccessorValueType*>(accessor_->GetIteratorValue(
433  data_, iterator_, scratch_space_.get())));
434  }
436  return static_cast<IteratorPointerType>(
438  }
439  bool operator!=(const RepeatedFieldRefIterator& other) const {
440  assert(data_ == other.data_);
441  assert(accessor_ == other.accessor_);
443  }
444  bool operator==(const RepeatedFieldRefIterator& other) const {
445  return !this->operator!=(other);
446  }
447 
449  : data_(other.data_),
450  accessor_(other.accessor_),
451  iterator_(accessor_->CopyIterator(data_, other.iterator_)) {}
453  if (this != &other) {
455  data_ = other.data_;
456  accessor_ = other.accessor_;
458  }
459  return *this;
460  }
461 
462  protected:
463  const void* data_;
465  void* iterator_;
466  std::unique_ptr<AccessorValueType> scratch_space_;
467 };
468 
469 // TypeTraits that maps the type parameter T of RepeatedFieldRef or
470 // MutableRepeatedFieldRef to corresponding iterator type,
471 // RepeatedFieldAccessor type, etc.
472 template <typename T>
474  static const bool is_primitive = false;
475 };
476 #define DEFINE_PRIMITIVE(TYPE, type) \
477  template <> \
478  struct PrimitiveTraits<type> { \
479  static const bool is_primitive = true; \
480  static const FieldDescriptor::CppType cpp_type = \
481  FieldDescriptor::CPPTYPE_##TYPE; \
482  };
483 DEFINE_PRIMITIVE(INT32, int32)
484 DEFINE_PRIMITIVE(UINT32, uint32)
485 DEFINE_PRIMITIVE(INT64, int64)
486 DEFINE_PRIMITIVE(UINT64, uint64)
487 DEFINE_PRIMITIVE(FLOAT, float)
488 DEFINE_PRIMITIVE(DOUBLE, double)
489 DEFINE_PRIMITIVE(BOOL, bool)
490 #undef DEFINE_PRIMITIVE
491 
492 template <typename T>
494  T, typename std::enable_if<PrimitiveTraits<T>::is_primitive>::type> {
501  static const Descriptor* GetMessageFieldDescriptor() { return NULL; }
502 };
503 
504 template <typename T>
506  T, typename std::enable_if<is_proto_enum<T>::value>::type> {
509  // We use int32 for repeated enums in RepeatedFieldAccessor.
515  static const Descriptor* GetMessageFieldDescriptor() { return NULL; }
516 };
517 
518 template <typename T>
520  T, typename std::enable_if<std::is_same<std::string, T>::value>::type> {
528  static const Descriptor* GetMessageFieldDescriptor() { return NULL; }
529 };
530 
531 template <typename T>
533  static const Descriptor* get() {
534  return T::default_instance().GetDescriptor();
535  }
536 };
537 template <>
539  static const Descriptor* get() { return NULL; }
540 };
541 
542 template <typename T>
544  T, typename std::enable_if<std::is_base_of<Message, T>::value>::type> {
548  typedef const T& IteratorValueType;
549  typedef const T* IteratorPointerType;
554  }
555 };
556 } // namespace internal
557 } // namespace protobuf
558 } // namespace google
559 
560 #include <google/protobuf/port_undef.inc>
561 
562 #endif // GOOGLE_PROTOBUF_REFLECTION_H__
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::RemoveLast
void RemoveLast() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:235
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::RemoveLast
void RemoveLast() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:118
google::protobuf::MutableRepeatedFieldRef
Definition: bloaty/third_party/protobuf/src/google/protobuf/message.h:357
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::default_instance_
const Message * default_instance_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:272
absl::swap_internal::Swap
void Swap(T &lhs, T &rhs) noexcept(IsNothrowSwappable< T >::value)
Definition: abseil-cpp/absl/meta/type_traits.h:772
regen-readme.it
it
Definition: regen-readme.py:15
google::protobuf::value
const Descriptor::ReservedRange value
Definition: bloaty/third_party/protobuf/src/google/protobuf/descriptor.h:1954
google::protobuf::FieldDescriptor
Definition: bloaty/third_party/protobuf/src/google/protobuf/descriptor.h:515
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::MutableRepeatedFieldRef
MutableRepeatedFieldRef(Message *message, const FieldDescriptor *field)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:260
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::default_instance_
const Message * default_instance_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:211
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::empty
bool empty() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:110
google::protobuf.internal::PrimitiveTraits::is_primitive
static const bool is_primitive
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:474
google::protobuf::FieldDescriptor::CPPTYPE_STRING
@ CPPTYPE_STRING
Definition: bloaty/third_party/protobuf/src/google/protobuf/descriptor.h:562
google::protobuf.internal::Get
const T & Get(const void *ptr)
Definition: bloaty/third_party/protobuf/src/google/protobuf/generated_message_util.cc:97
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::SwapElements
void SwapElements(int index1, int index2) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:236
begin
char * begin
Definition: abseil-cpp/absl/strings/internal/str_format/float_conversion.cc:1007
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::IteratorValueType
const typedef T & IteratorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:548
google::protobuf::int64
int64_t int64
Definition: third_party/bloaty/third_party/protobuf/src/google/protobuf/stubs/port.h:151
google::protobuf.internal.python_message.MergeFrom
MergeFrom
Definition: bloaty/third_party/protobuf/python/google/protobuf/internal/python_message.py:1339
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< is_proto_enum< T >::value >::type >::IteratorValueType
T IteratorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:511
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::CopyFrom
void CopyFrom(const Container &container) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:253
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::data_
void * data_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:150
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::AccessorType
RepeatedFieldAccessor AccessorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:546
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::const_iterator
IteratorType const_iterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:181
google::protobuf.internal::RepeatedFieldRefIterator::operator==
bool operator==(const RepeatedFieldRefIterator &other) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:444
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::AccessorValueType
Message AccessorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:547
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< PrimitiveTraits< T >::is_primitive >::type >::AccessorValueType
T AccessorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:497
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_same< std::string, T >::value >::type >::AccessorValueType
std::string AccessorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:523
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::AccessorType
internal::RefTypeTraits< T >::AccessorType AccessorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:107
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::Get
T Get(int index) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:112
testing::internal::string
::std::string string
Definition: bloaty/third_party/protobuf/third_party/googletest/googletest/include/gtest/internal/gtest-port.h:881
google::protobuf.internal::RepeatedFieldRefIterator::scratch_space_
std::unique_ptr< AccessorValueType > scratch_space_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:466
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< is_proto_enum< T >::value >::type >::IteratorPointerType
int32 * IteratorPointerType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:512
google::protobuf::uint32
uint32_t uint32
Definition: third_party/bloaty/third_party/protobuf/src/google/protobuf/stubs/port.h:155
google::protobuf::Reflection::GetRepeatedFieldRef
RepeatedFieldRef< T > GetRepeatedFieldRef(const Message &message, const FieldDescriptor *field) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:55
google::protobuf.internal::RepeatedFieldAccessor::Field
void Field
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:304
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< PrimitiveTraits< T >::is_primitive >::type >::iterator
RepeatedFieldRefIterator< T > iterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:495
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::Set
void Set(int index, const T &value) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:231
google::protobuf.internal::RefTypeTraits
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:51
google::protobuf
Definition: bloaty/third_party/protobuf/benchmarks/util/data_proto2_to_proto3_util.h:12
google::protobuf::Reflection::GetMessageFactory
MessageFactory * GetMessageFactory() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/generated_message_reflection.cc:2186
google::protobuf::MessageFactory::GetPrototype
virtual const Message * GetPrototype(const Descriptor *type)=0
Value
Definition: bloaty/third_party/protobuf/src/google/protobuf/struct.pb.h:306
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::Add
void Add(const T &value) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:234
google::protobuf::python::cdescriptor_pool::Add
static PyObject * Add(PyObject *self, PyObject *file_descriptor_proto)
Definition: bloaty/third_party/protobuf/python/google/protobuf/pyext/descriptor_pool.cc:621
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::Swap
void Swap(const MutableRepeatedFieldRef &other) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:241
google::protobuf.internal::RepeatedFieldRefIterator::RepeatedFieldRefIterator
RepeatedFieldRefIterator(const void *data, const RepeatedFieldAccessor *accessor, bool begin, AccessorValueType *scratch_space)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:412
env.new
def new
Definition: env.py:51
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::AccessorType
internal::RefTypeTraits< T >::AccessorType AccessorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:218
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::Get
const T & Get(int index, T *scratch_space) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:173
google::protobuf::Reflection
Definition: bloaty/third_party/protobuf/src/google/protobuf/message.h:397
iterator
const typedef MCPhysReg * iterator
Definition: MCRegisterInfo.h:27
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::data_
void * data_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:270
message
char * message
Definition: libuv/docs/code/tty-gravity/main.c:12
T
#define T(upbtypeconst, upbtype, ctype, default_value)
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_same< std::string, T >::value >::type >::IteratorValueType
const typedef std::string IteratorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:524
google::protobuf.internal::RepeatedFieldAccessor::AdvanceIterator
virtual Iterator * AdvanceIterator(const Field *data, Iterator *iterator) const =0
BOOL
int BOOL
Definition: undname.c:46
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::RepeatedFieldRef
RepeatedFieldRef(const Message &message, const FieldDescriptor *field)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:91
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< is_proto_enum< T >::value >::type >::GetMessageFieldDescriptor
static const Descriptor * GetMessageFieldDescriptor()
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:515
google::protobuf.internal::RepeatedFieldRefIterator::operator!=
bool operator!=(const RepeatedFieldRefIterator &other) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:439
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::data_
const void * data_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:209
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::empty
bool empty() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:74
google::protobuf.internal::PrimitiveTraits
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:473
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::const_reference
const typedef T & const_reference
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:82
google::protobuf.internal::RepeatedFieldRefIterator::operator++
RepeatedFieldRefIterator operator++(int)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:421
google::protobuf.internal::RepeatedFieldRefIterator::data_
const void * data_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:463
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< is_proto_enum< T >::value >::type >::iterator
RepeatedFieldRefIterator< T > iterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:507
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::data_
const void * data_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:99
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::size_type
int size_type
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:185
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::Clear
void Clear() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:122
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::MutableRepeatedFieldRef
MutableRepeatedFieldRef(Message *message, const FieldDescriptor *field)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:143
google::protobuf.internal::RepeatedFieldRefIterator::operator=
RepeatedFieldRefIterator & operator=(const RepeatedFieldRefIterator &other)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:452
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::IteratorType
internal::RefTypeTraits< T >::iterator IteratorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:70
google::protobuf::int32
int32_t int32
Definition: third_party/bloaty/third_party/protobuf/src/google/protobuf/stubs/port.h:150
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::MergeFrom
void MergeFrom(const Container &container) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:246
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::begin
iterator begin() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:86
google::protobuf.internal::RepeatedFieldRefIterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:395
google::protobuf.internal::RepeatedFieldAccessor::GetIteratorValue
virtual const Value * GetIteratorValue(const Field *data, const Iterator *iterator, Value *scratch_space) const =0
google::protobuf.internal::RepeatedFieldRefIterator::iterator_
void * iterator_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:465
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< PrimitiveTraits< T >::is_primitive >::type >::IteratorPointerType
T * IteratorPointerType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:499
google::protobuf.internal::RepeatedFieldAccessor::Iterator
void Iterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:306
google::protobuf::Reflection::RepeatedFieldAccessor
const internal::RepeatedFieldAccessor * RepeatedFieldAccessor(const FieldDescriptor *field) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/message.cc:668
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::begin
iterator begin() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:188
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::end
iterator end() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:191
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::Add
void Add(const T &value) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:117
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::value_type
T value_type
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:182
google::protobuf::Reflection::GetMutableRepeatedFieldRef
MutableRepeatedFieldRef< T > GetMutableRepeatedFieldRef(Message *message, const FieldDescriptor *field) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:61
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::end
iterator end() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:87
google::protobuf.internal::RepeatedFieldRefIterator::RepeatedFieldRefIterator
RepeatedFieldRefIterator(const RepeatedFieldRefIterator &other)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:448
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::const_reference
const typedef T & const_reference
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:184
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::accessor_
const AccessorType * accessor_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:210
google::protobuf.internal::RepeatedFieldAccessor::Set
void Set(Field *data, int index, const ValueType &value) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:358
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::NewMessage
T * NewMessage() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:178
google::protobuf.internal::RepeatedFieldAccessor
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:301
DEFINE_PRIMITIVE
#define DEFINE_PRIMITIVE(TYPE, type)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:476
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_same< std::string, T >::value >::type >::iterator
RepeatedFieldRefIterator< T > iterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:521
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::Set
void Set(int index, const T &value) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:114
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::accessor_
const AccessorType * accessor_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:151
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::size_type
int size_type
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:83
google::protobuf::Reflection::RepeatedFieldData
void * RepeatedFieldData(Message *message, const FieldDescriptor *field, FieldDescriptor::CppType cpp_type, const Descriptor *message_type) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/generated_message_reflection.cc:2190
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::GetMessageFieldDescriptor
static const Descriptor * GetMessageFieldDescriptor()
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:552
google::protobuf::uint64
uint64_t uint64
Definition: third_party/bloaty/third_party/protobuf/src/google/protobuf/stubs/port.h:156
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::reference
T & reference
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:81
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::difference_type
ptrdiff_t difference_type
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:84
data
char data[kBufferLength]
Definition: abseil-cpp/absl/strings/internal/str_format/float_conversion.cc:1006
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::iterator
IteratorType iterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:180
google::protobuf.internal::MessageDescriptorGetter< Message >::get
static const Descriptor * get()
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:539
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::iterator
RepeatedFieldRefIterator< T > iterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:545
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::CopyFrom
void CopyFrom(const Container &container) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:136
b
uint64_t b
Definition: abseil-cpp/absl/container/internal/layout_test.cc:53
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::NewMessage
T * NewMessage() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:229
Json::ValueType
ValueType
Type of the value held by a Value object.
Definition: third_party/bloaty/third_party/protobuf/conformance/third_party/jsoncpp/json.h:463
google::protobuf.internal::MessageDescriptorGetter::get
static const Descriptor * get()
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:533
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_same< std::string, T >::value >::type >::GetMessageFieldDescriptor
static const Descriptor * GetMessageFieldDescriptor()
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:528
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::size
int size() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:111
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_same< std::string, T >::value >::type >::IteratorPointerType
const typedef std::string * IteratorPointerType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:525
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::Swap
void Swap(const MutableRepeatedFieldRef &other) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:124
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::Clear
void Clear() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:239
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::MergeFrom
void MergeFrom(const Container &container) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:129
google::protobuf.internal::RepeatedFieldAccessor::CopyIterator
virtual Iterator * CopyIterator(const Field *data, const Iterator *iterator) const =0
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< PrimitiveTraits< T >::is_primitive >::type >::AccessorType
RepeatedFieldAccessor AccessorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:496
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::iterator
IteratorType iterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:78
google::protobuf::Message
Definition: bloaty/third_party/protobuf/src/google/protobuf/message.h:205
field
const FieldDescriptor * field
Definition: bloaty/third_party/protobuf/src/google/protobuf/compiler/parser_unittest.cc:2692
google::protobuf.internal.python_message.Clear
Clear
Definition: bloaty/third_party/protobuf/python/google/protobuf/internal/python_message.py:1430
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::size
int size() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:75
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::value_type
T value_type
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:80
absl::container_internal::IsEmpty
bool IsEmpty(ctrl_t c)
Definition: abseil-cpp/absl/container/internal/raw_hash_set.h:489
index
int index
Definition: bloaty/third_party/protobuf/php/ext/google/protobuf/protobuf.h:1184
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::SwapElements
void SwapElements(int index1, int index2) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:119
std
Definition: grpcpp/impl/codegen/async_unary_call.h:407
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::empty
bool empty() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:162
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::reference
T & reference
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:183
google::protobuf::FieldDescriptor::CPPTYPE_ENUM
@ CPPTYPE_ENUM
Definition: bloaty/third_party/protobuf/src/google/protobuf/descriptor.h:561
google::protobuf.internal::RepeatedFieldRefIterator::operator->
IteratorPointerType operator->() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:435
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::const_iterator
IteratorType const_iterator
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:79
google::protobuf::Descriptor
Definition: bloaty/third_party/protobuf/src/google/protobuf/descriptor.h:231
data_
std::string data_
Definition: cord_rep_btree_navigator_test.cc:84
google::protobuf.internal::RepeatedFieldAccessor::EqualsIterator
virtual bool EqualsIterator(const Field *data, const Iterator *a, const Iterator *b) const =0
google::protobuf.internal::RepeatedFieldRefIterator::operator*
IteratorValueType operator*() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:430
google::protobuf.internal::RepeatedFieldRefIterator::operator++
RepeatedFieldRefIterator & operator++()
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:426
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::Get
const T & Get(int index, T *scratch_space) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:224
absl::inlined_vector_internal::Iterator
Pointer< A > Iterator
Definition: abseil-cpp/absl/container/internal/inlined_vector.h:64
google::protobuf.internal::RepeatedFieldRefIterator::IteratorPointerType
RefTypeTraits< T >::IteratorPointerType IteratorPointerType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:399
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< PrimitiveTraits< T >::is_primitive >::type >::IteratorValueType
T IteratorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:498
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::RepeatedFieldRef
RepeatedFieldRef(const Message &message, const FieldDescriptor *field)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:198
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< PrimitiveTraits< T >::is_primitive >::type >::GetMessageFieldDescriptor
static const Descriptor * GetMessageFieldDescriptor()
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:501
google::protobuf.internal::RepeatedFieldAccessor::Get
T Get(const Field *data, int index) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:350
google::protobuf.internal::RepeatedFieldRefIterator::IteratorValueType
RefTypeTraits< T >::IteratorValueType IteratorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:398
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::accessor_
const AccessorType * accessor_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:271
internal
Definition: benchmark/test/output_test_helper.cc:20
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::size
int size() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:222
google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE
@ CPPTYPE_MESSAGE
Definition: bloaty/third_party/protobuf/src/google/protobuf/descriptor.h:563
google::protobuf.internal::RepeatedFieldRefIterator::RepeatedFieldRefIterator
RepeatedFieldRefIterator(const void *data, const RepeatedFieldAccessor *accessor, bool begin)
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:403
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< is_proto_enum< T >::value >::type >::AccessorType
RepeatedFieldAccessor AccessorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:508
google::protobuf.internal::RepeatedFieldRefIterator::~RepeatedFieldRefIterator
~RepeatedFieldRefIterator()
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:420
google::protobuf.internal::RepeatedFieldRefIterator::accessor_
const RepeatedFieldAccessor * accessor_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:464
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::IteratorPointerType
const typedef T * IteratorPointerType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:549
Field
Definition: bloaty/third_party/protobuf/src/google/protobuf/type.pb.h:446
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::accessor_
const AccessorType * accessor_
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:100
asyncio_get_stats.type
type
Definition: asyncio_get_stats.py:37
autogen_x86imm.tmp
tmp
Definition: autogen_x86imm.py:12
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< is_proto_enum< T >::value >::type >::AccessorValueType
int32 AccessorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:510
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::AccessorType
internal::RefTypeTraits< T >::AccessorType AccessorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:71
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::difference_type
ptrdiff_t difference_type
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:186
google::protobuf.internal::MessageDescriptorGetter
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:532
google::protobuf.internal::RepeatedFieldAccessor::Value
void Value
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:305
google::protobuf.internal::RepeatedFieldAccessor::Add
void Add(Field *data, const ValueType &value) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:372
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::AccessorType
internal::RefTypeTraits< T >::AccessorType AccessorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:159
google::protobuf.internal::RepeatedFieldRefIterator::AccessorValueType
RefTypeTraits< T >::AccessorValueType AccessorValueType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:397
google::protobuf.internal::RepeatedFieldAccessor::DeleteIterator
virtual void DeleteIterator(const Field *data, Iterator *iterator) const =0
google::protobuf::FieldDescriptor::CppType
CppType
Definition: bloaty/third_party/protobuf/src/google/protobuf/descriptor.h:553
google
Definition: bloaty/third_party/protobuf/benchmarks/util/data_proto2_to_proto3_util.h:11
google::protobuf::RepeatedFieldRef
Definition: bloaty/third_party/protobuf/src/google/protobuf/message.h:354
google::protobuf.internal::RefTypeTraits< T, typename std::enable_if< std::is_same< std::string, T >::value >::type >::AccessorType
RepeatedFieldAccessor AccessorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:522
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::size
int size() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:163
container
static struct async_container * container
Definition: benchmark-million-async.c:33
google::protobuf::RepeatedFieldRef< T, typename std::enable_if<!std::is_base_of< Message, T >::value >::type >::Get
T Get(int index) const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:76
google::protobuf.internal::cpp_type
FieldDescriptor::CppType cpp_type(FieldType type)
Definition: bloaty/third_party/protobuf/src/google/protobuf/extension_set_heavy.cc:133
google::protobuf::RepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::IteratorType
internal::RefTypeTraits< T >::iterator IteratorType
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:158
google::protobuf::MutableRepeatedFieldRef< T, typename std::enable_if< std::is_base_of< Message, T >::value >::type >::empty
bool empty() const
Definition: bloaty/third_party/protobuf/src/google/protobuf/reflection.h:221


grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:00