reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

tools/lldb/include/lldb/Host/common/NativeProcessProtocol.h
   32 class MemoryRegionInfo;
tools/lldb/include/lldb/lldb-forward.h
  128 class MemoryRegionInfo;

References

tools/lldb/include/lldb/API/SBMemoryRegionInfo.h
   86   lldb_private::MemoryRegionInfo &ref();
   88   const lldb_private::MemoryRegionInfo &ref() const;
   91   SBMemoryRegionInfo(const lldb_private::MemoryRegionInfo *lldb_object_ptr);
tools/lldb/include/lldb/Host/common/NativeProcessProtocol.h
   79                                      MemoryRegionInfo &range_info);
tools/lldb/include/lldb/Target/MemoryRegionInfo.h
   90   bool operator==(const MemoryRegionInfo &rhs) const {
   97   bool operator!=(const MemoryRegionInfo &rhs) const { return !(*this == rhs); }
  110 inline bool operator<(const MemoryRegionInfo &lhs,
  111                       const MemoryRegionInfo &rhs) {
  115 inline bool operator<(const MemoryRegionInfo &lhs, lldb::addr_t rhs) {
  119 inline bool operator<(lldb::addr_t lhs, const MemoryRegionInfo &rhs) {
  124                               const MemoryRegionInfo &Info);
  127 class MemoryRegionInfos : public std::vector<lldb_private::MemoryRegionInfo> {
  137   static void format(const lldb_private::MemoryRegionInfo::OptionalBool &B,
  140     case lldb_private::MemoryRegionInfo::eNo:
  143     case lldb_private::MemoryRegionInfo::eYes:
  146     case lldb_private::MemoryRegionInfo::eDontKnow:
tools/lldb/include/lldb/Target/Process.h
 1773                                      MemoryRegionInfo &range_info) {
tools/lldb/include/lldb/lldb-forward.h
  356 typedef std::unique_ptr<lldb_private::MemoryRegionInfo> MemoryRegionInfoUP;
tools/lldb/source/API/SBMemoryRegionInfo.cpp
   21 SBMemoryRegionInfo::SBMemoryRegionInfo() : m_opaque_up(new MemoryRegionInfo()) {
   25 SBMemoryRegionInfo::SBMemoryRegionInfo(const MemoryRegionInfo *lldb_object_ptr)
   26     : m_opaque_up(new MemoryRegionInfo()) {
   73 MemoryRegionInfo &SBMemoryRegionInfo::ref() { return *m_opaque_up; }
   75 const MemoryRegionInfo &SBMemoryRegionInfo::ref() const { return *m_opaque_up; }
   92   return m_opaque_up->GetReadable() == MemoryRegionInfo::eYes;
   98   return m_opaque_up->GetWritable() == MemoryRegionInfo::eYes;
  104   return m_opaque_up->GetExecutable() == MemoryRegionInfo::eYes;
  110   return m_opaque_up->GetMapped() == MemoryRegionInfo::eYes;
tools/lldb/source/API/SBMemoryRegionInfoList.cpp
   38   void Append(const MemoryRegionInfo &sb_region) {
   45     for (const auto &val : list.m_regions)
   52                                   MemoryRegionInfo &region_info) {
tools/lldb/source/API/Utils.h
   17 template <typename T> std::unique_ptr<T> clone(const std::unique_ptr<T> &src) {
   17 template <typename T> std::unique_ptr<T> clone(const std::unique_ptr<T> &src) {
   19     return std::make_unique<T>(*src);
tools/lldb/source/Commands/CommandObjectMemory.cpp
 1718         lldb_private::MemoryRegionInfo range_info;
tools/lldb/source/Core/DynamicLoader.cpp
  191     MemoryRegionInfo memory_info;
tools/lldb/source/Expression/IRMemoryMap.cpp
  105     MemoryRegionInfo region_info;
  109         if (region_info.GetReadable() != MemoryRegionInfo::OptionalBool::eNo ||
  110             region_info.GetWritable() != MemoryRegionInfo::OptionalBool::eNo ||
  112                 MemoryRegionInfo::OptionalBool::eNo) {
tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
  509   MemoryRegionInfo info;
  528   MemoryRegionInfo info;
  531   if (status.Fail() || info.GetMapped() != MemoryRegionInfo::eYes ||
tools/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
 6054       MemoryRegionInfo range_info;
 6068           if (range_info.GetReadable() == MemoryRegionInfo::eYes)
 6070           if (range_info.GetWritable() == MemoryRegionInfo::eYes)
 6072           if (range_info.GetExecutable() == MemoryRegionInfo::eYes)
tools/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
 1221                                                MemoryRegionInfo &range_info) {
 1247     MemoryRegionInfo &proc_entry_info = it->first;
 1261       range_info.SetReadable(MemoryRegionInfo::OptionalBool::eNo);
 1262       range_info.SetWritable(MemoryRegionInfo::OptionalBool::eNo);
 1263       range_info.SetExecutable(MemoryRegionInfo::OptionalBool::eNo);
 1264       range_info.SetMapped(MemoryRegionInfo::OptionalBool::eNo);
 1282   range_info.SetReadable(MemoryRegionInfo::OptionalBool::eNo);
 1283   range_info.SetWritable(MemoryRegionInfo::OptionalBool::eNo);
 1284   range_info.SetExecutable(MemoryRegionInfo::OptionalBool::eNo);
 1285   range_info.SetMapped(MemoryRegionInfo::OptionalBool::eNo);
tools/lldb/source/Plugins/Process/Linux/NativeProcessLinux.h
   66                              MemoryRegionInfo &range_info) override;
  135   std::vector<std::pair<MemoryRegionInfo, FileSpec>> m_mem_region_cache;
tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.cpp
   19                                       MemoryRegionInfo &memory_region_info) {
   50   memory_region_info.SetMapped(MemoryRegionInfo::OptionalBool::eYes);
   60     memory_region_info.SetReadable(MemoryRegionInfo::OptionalBool::eYes);
   62     memory_region_info.SetReadable(MemoryRegionInfo::OptionalBool::eNo);
   69     memory_region_info.SetWritable(MemoryRegionInfo::OptionalBool::eYes);
   71     memory_region_info.SetWritable(MemoryRegionInfo::OptionalBool::eNo);
   78     memory_region_info.SetExecutable(MemoryRegionInfo::OptionalBool::eYes);
   80     memory_region_info.SetExecutable(MemoryRegionInfo::OptionalBool::eNo);
  107     MemoryRegionInfo region;
tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.h
   19 typedef std::function<bool(const lldb_private::MemoryRegionInfo &,
tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
  292                                            MemoryRegionInfo &region_info) {
  302                                   ? MemoryRegionInfo::eYes
  303                                   : MemoryRegionInfo::eNo);
  305                                   ? MemoryRegionInfo::eYes
  306                                   : MemoryRegionInfo::eNo);
  308                                     ? MemoryRegionInfo::eYes
  309                                     : MemoryRegionInfo::eNo);
  310       region_info.SetMapped(MemoryRegionInfo::eYes);
  314       region_info.SetReadable(MemoryRegionInfo::eNo);
  315       region_info.SetWritable(MemoryRegionInfo::eNo);
  316       region_info.SetExecutable(MemoryRegionInfo::eNo);
  317       region_info.SetMapped(MemoryRegionInfo::eNo);
  324   region_info.SetReadable(MemoryRegionInfo::eNo);
  325   region_info.SetWritable(MemoryRegionInfo::eNo);
  326   region_info.SetExecutable(MemoryRegionInfo::eNo);
  327   region_info.SetMapped(MemoryRegionInfo::eNo);
tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
   93                       lldb_private::MemoryRegionInfo &region_info) override;
tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
 1451     lldb::addr_t addr, lldb_private::MemoryRegionInfo &region_info) {
 1483               region_info.SetReadable(MemoryRegionInfo::eYes);
 1485               region_info.SetReadable(MemoryRegionInfo::eNo);
 1488               region_info.SetWritable(MemoryRegionInfo::eYes);
 1490               region_info.SetWritable(MemoryRegionInfo::eNo);
 1493               region_info.SetExecutable(MemoryRegionInfo::eYes);
 1495               region_info.SetExecutable(MemoryRegionInfo::eNo);
 1497             region_info.SetMapped(MemoryRegionInfo::eYes);
 1501             region_info.SetReadable(MemoryRegionInfo::eNo);
 1502             region_info.SetWritable(MemoryRegionInfo::eNo);
 1503             region_info.SetExecutable(MemoryRegionInfo::eNo);
 1504             region_info.SetMapped(MemoryRegionInfo::eNo);
 1524           region_info.SetReadable(MemoryRegionInfo::eNo);
 1525           region_info.SetWritable(MemoryRegionInfo::eNo);
 1526           region_info.SetExecutable(MemoryRegionInfo::eNo);
 1527           region_info.SetMapped(MemoryRegionInfo::eNo);
 1544   MemoryRegionInfo qXfer_region_info;
 1569     lldb::addr_t addr, MemoryRegionInfo &region) {
 1573   for (const auto &map_region : m_qXfer_memory_map) {
 1636     MemoryRegionInfo region;
 1640       region.SetReadable(MemoryRegionInfo::eYes);
 1643       region.SetReadable(MemoryRegionInfo::eYes);
 1644       region.SetWritable(MemoryRegionInfo::eYes);
 1647       region.SetFlash(MemoryRegionInfo::eYes);
tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
  216   Status GetMemoryRegionInfo(lldb::addr_t addr, MemoryRegionInfo &range_info);
  569   std::vector<MemoryRegionInfo> m_qXfer_memory_map;
  597                                      MemoryRegionInfo &region);
tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
 2440   MemoryRegionInfo region_info;
 2478   MemoryRegionInfo region_info;
tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
 2814   MemoryRegionInfo region;
 2932   MemoryRegionInfo region;
 2936       region_status.Success() && region.GetFlash() == MemoryRegionInfo::eYes;
 3028                                              MemoryRegionInfo &region_info) {
tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
  146                              MemoryRegionInfo &region_info) override;
tools/lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
  608                                             MemoryRegionInfo &region_info) {
  618                                   ? MemoryRegionInfo::eYes
  619                                   : MemoryRegionInfo::eNo);
  621                                   ? MemoryRegionInfo::eYes
  622                                   : MemoryRegionInfo::eNo);
  624                                     ? MemoryRegionInfo::eYes
  625                                     : MemoryRegionInfo::eNo);
  626       region_info.SetMapped(MemoryRegionInfo::eYes);
  630       region_info.SetReadable(MemoryRegionInfo::eNo);
  631       region_info.SetWritable(MemoryRegionInfo::eNo);
  632       region_info.SetExecutable(MemoryRegionInfo::eNo);
  633       region_info.SetMapped(MemoryRegionInfo::eNo);
  640   region_info.SetReadable(MemoryRegionInfo::eNo);
  641   region_info.SetWritable(MemoryRegionInfo::eNo);
  642   region_info.SetExecutable(MemoryRegionInfo::eNo);
  643   region_info.SetMapped(MemoryRegionInfo::eNo);
tools/lldb/source/Plugins/Process/mach-core/ProcessMachCore.h
   74                       lldb_private::MemoryRegionInfo &region_info) override;
tools/lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
  415                                 std::vector<MemoryRegionInfo> &regions) {
  431                                      std::vector<MemoryRegionInfo> &regions) {
  439   constexpr auto yes = MemoryRegionInfo::eYes;
  440   constexpr auto no = MemoryRegionInfo::eNo;
  442     MemoryRegionInfo region;
  468                                  std::vector<MemoryRegionInfo> &regions) {
  480     MemoryRegionInfo region;
  483     region.SetReadable(MemoryRegionInfo::eYes);
  484     region.SetMapped(MemoryRegionInfo::eYes);
  493                                    std::vector<MemoryRegionInfo> &regions) {
  510     MemoryRegionInfo region;
  513     region.SetReadable(MemoryRegionInfo::eYes);
  514     region.SetMapped(MemoryRegionInfo::eYes);
tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
  348                                             MemoryRegionInfo &region) {
  367   region.SetReadable(MemoryRegionInfo::eNo);
  368   region.SetWritable(MemoryRegionInfo::eNo);
  369   region.SetExecutable(MemoryRegionInfo::eNo);
  370   region.SetMapped(MemoryRegionInfo::eNo);
tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.h
   80                              MemoryRegionInfo &range_info) override;
tools/lldb/source/Target/MemoryRegionInfo.cpp
   12                                             const MemoryRegionInfo &Info) {
tools/lldb/source/Target/Process.cpp
 2415   MemoryRegionInfo range_info;
 2420   if (range_info.GetReadable() == MemoryRegionInfo::eDontKnow ||
 2421       range_info.GetWritable() == MemoryRegionInfo::eDontKnow ||
 2422       range_info.GetExecutable() == MemoryRegionInfo::eDontKnow) {
 2426   if (range_info.GetReadable() == MemoryRegionInfo::eYes)
 2429   if (range_info.GetWritable() == MemoryRegionInfo::eYes)
 2432   if (range_info.GetExecutable() == MemoryRegionInfo::eYes)
 5831     lldb_private::MemoryRegionInfo region_info;
 5840     if (region_info.GetMapped() == MemoryRegionInfo::eYes) {
tools/lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp
  325   MemoryRegionInfo region_info;
  350   MemoryRegionInfo region_info;
tools/lldb/unittests/Process/minidump/MinidumpParserTest.cpp
  335 constexpr auto yes = MemoryRegionInfo::eYes;
  336 constexpr auto no = MemoryRegionInfo::eNo;
  337 constexpr auto unknown = MemoryRegionInfo::eDontKnow;
usr/include/c++/7.4.0/bits/alloc_traits.h
  387       using allocator_type = allocator<_Tp>;
  389       using value_type = _Tp;
  392       using pointer = _Tp*;
  395       using const_pointer = const _Tp*;
  474 	construct(allocator_type& __a, _Up* __p, _Args&&... __args)
  474 	construct(allocator_type& __a, _Up* __p, _Args&&... __args)
  475 	{ __a.construct(__p, std::forward<_Args>(__args)...); }
  486 	destroy(allocator_type& __a, _Up* __p)
usr/include/c++/7.4.0/bits/allocator.h
  108     class allocator: public __allocator_base<_Tp>
  113       typedef _Tp*       pointer;
  114       typedef const _Tp* const_pointer;
  115       typedef _Tp&       reference;
  116       typedef const _Tp& const_reference;
  117       typedef _Tp        value_type;
  137 	allocator(const allocator<_Tp1>&) throw() { }
  158     operator!=(const allocator<_T1>&, const allocator<_T2>&)
  158     operator!=(const allocator<_T1>&, const allocator<_T2>&)
  164     operator!=(const allocator<_Tp>&, const allocator<_Tp>&)
  164     operator!=(const allocator<_Tp>&, const allocator<_Tp>&)
usr/include/c++/7.4.0/bits/move.h
   46     inline _GLIBCXX_CONSTEXPR _Tp*
   47     __addressof(_Tp& __r) _GLIBCXX_NOEXCEPT
   72     constexpr _Tp&&
   73     forward(typename std::remove_reference<_Tp>::type& __t) noexcept
   83     constexpr _Tp&&
   84     forward(typename std::remove_reference<_Tp>::type&& __t) noexcept
   98     move(_Tp&& __t) noexcept
  104     : public __and_<__not_<is_nothrow_move_constructible<_Tp>>,
  105                     is_copy_constructible<_Tp>>::type { };
  184     typename enable_if<__and_<__not_<__is_tuple_like<_Tp>>,
  185 			      is_move_constructible<_Tp>,
  186 			      is_move_assignable<_Tp>>::value>::type
  187     swap(_Tp& __a, _Tp& __b)
  187     swap(_Tp& __a, _Tp& __b)
  198       _Tp __tmp = _GLIBCXX_MOVE(__a);
usr/include/c++/7.4.0/bits/predefined_ops.h
   64       operator()(_Iterator __it, _Value& __val) const
   89       operator()(_Value& __val, _Iterator __it) const
usr/include/c++/7.4.0/bits/std_function.h
  299       _M_invoke(const _Any_data& __functor, _ArgTypes&&... __args)
  628       using _Invoker_type = _Res (*)(const _Any_data&, _ArgTypes&&...);
usr/include/c++/7.4.0/bits/stl_construct.h
   74     _Construct(_T1* __p, _Args&&... __args)
   74     _Construct(_T1* __p, _Args&&... __args)
   75     { ::new(static_cast<void*>(__p)) _T1(std::forward<_Args>(__args)...); }
  204 	     allocator<_Tp>&)
usr/include/c++/7.4.0/bits/stl_heap.h
  129 		_Distance __holeIndex, _Distance __topIndex, _Tp __value,
  215 		  _Distance __len, _Tp __value, _Compare __comp)
usr/include/c++/7.4.0/bits/stl_iterator.h
 1224     __make_move_if_noexcept_iterator(_Tp* __i)
usr/include/c++/7.4.0/bits/stl_iterator_base_types.h
  181       typedef _Tp                         value_type;
  183       typedef _Tp*                        pointer;
  184       typedef _Tp&                        reference;
  192       typedef _Tp                         value_type;
  194       typedef const _Tp*                  pointer;
  195       typedef const _Tp&                  reference;
usr/include/c++/7.4.0/bits/stl_pair.h
  100 	return __and_<is_constructible<_T1, const _U1&>,
  100 	return __and_<is_constructible<_T1, const _U1&>,
  107 	return __and_<is_convertible<const _U1&, _T1>,
  107 	return __and_<is_convertible<const _U1&, _T1>,
  114 	return __and_<is_constructible<_T1, _U1&&>,
  114 	return __and_<is_constructible<_T1, _U1&&>,
  121 	return __and_<is_convertible<_U1&&, _T1>,
  121 	return __and_<is_convertible<_U1&&, _T1>,
  128 	using __do_converts = __and_<is_convertible<const _U1&, _T1>,
  128 	using __do_converts = __and_<is_convertible<const _U1&, _T1>,
  133 	return __and_<is_constructible<_T1, const _U1&>,
  133 	return __and_<is_constructible<_T1, const _U1&>,
  142 	using __do_converts = __and_<is_convertible<_U1&&, _T1>,
  142 	using __do_converts = __and_<is_convertible<_U1&&, _T1>,
  147 	return __and_<is_constructible<_T1, _U1&&>,
  147 	return __and_<is_constructible<_T1, _U1&&>,
  209     : private __pair_base<_T1, _T2>
  211       typedef _T1 first_type;    /// @c first_type is the first bound type
  214       _T1 first;                 /// @c first is a copy of the first object
  252       using _PCCP = _PCC<true, _T1, _T2>;
  260       constexpr pair(const _T1& __a, const _T2& __b)
  269       explicit constexpr pair(const _T1& __a, const _T2& __b)
  283 			    _T1, _T2>;
  311        constexpr pair(_U1&& __x, const _T2& __y)
  325        constexpr pair(const _T1& __x, _U2&& __y)
  332        explicit pair(const _T1& __x, _U2&& __y)
  341 	constexpr pair(_U1&& __x, _U2&& __y)
  379 		__and_<is_copy_assignable<_T1>,
  390 		__and_<is_move_assignable<_T1>,
  402       typename enable_if<__and_<is_assignable<_T1&, const _U1&>,
  402       typename enable_if<__and_<is_assignable<_T1&, const _U1&>,
  405 	operator=(const pair<_U1, _U2>& __p)
  413       typename enable_if<__and_<is_assignable<_T1&, _U1&&>,
  413       typename enable_if<__and_<is_assignable<_T1&, _U1&&>,
  416 	operator=(pair<_U1, _U2>&& __p)
usr/include/c++/7.4.0/bits/stl_uninitialized.h
  288 			   _ForwardIterator __result, allocator<_Tp>&)
usr/include/c++/7.4.0/bits/stl_vector.h
   77 	rebind<_Tp>::other _Tp_alloc_type;
  216     class vector : protected _Vector_base<_Tp, _Alloc>
  227       typedef _Vector_base<_Tp, _Alloc>			_Base;
  232       typedef _Tp					value_type;
  919       _Tp*
  923       const _Tp*
  962 	emplace_back(_Args&&... __args);
 1483 	_M_realloc_insert(iterator __position, _Args&&... __args);
usr/include/c++/7.4.0/bits/unique_ptr.h
   68         default_delete(const default_delete<_Up>&) noexcept { }
   72       operator()(_Tp* __ptr) const
   74 	static_assert(!is_void<_Tp>::value,
   76 	static_assert(sizeof(_Tp)>0,
  122 	  using type = _Up*;
  137       using pointer = typename _Ptr<_Tp, _Dp>::type;
  161 	typename __uniq_ptr_impl<_Tp, _Up>::_DeleterConstraint::type;
  163       __uniq_ptr_impl<_Tp, _Dp> _M_t;
  166       using pointer	  = typename __uniq_ptr_impl<_Tp, _Dp>::pointer;
  167       using element_type  = _Tp;
  252 	unique_ptr(unique_ptr<_Up, _Ep>&& __u) noexcept
  297           __safe_conversion_up<_Up, _Ep>,
  301 	operator=(unique_ptr<_Up, _Ep>&& __u) noexcept
  811     { typedef unique_ptr<_Tp> __single_object; };
  823     inline typename _MakeUniq<_Tp>::__single_object
  824     make_unique(_Args&&... __args)
  825     { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
usr/include/c++/7.4.0/bits/vector.tcc
  101 				     std::forward<_Args>(__args)...);
  105 	  _M_realloc_insert(end(), std::forward<_Args>(__args)...);
  418 				   std::forward<_Args>(__args)...);
usr/include/c++/7.4.0/ext/alloc_traits.h
  117       { typedef typename _Base_type::template rebind_alloc<_Tp> other; };
usr/include/c++/7.4.0/ext/new_allocator.h
   63       typedef _Tp*       pointer;
   64       typedef const _Tp* const_pointer;
   65       typedef _Tp&       reference;
   66       typedef const _Tp& const_reference;
   67       typedef _Tp        value_type;
   84 	new_allocator(const new_allocator<_Tp1>&) _GLIBCXX_USE_NOEXCEPT { }
  111 	return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
  130       { return size_t(-1) / sizeof(_Tp); }
  135 	construct(_Up* __p, _Args&&... __args)
  135 	construct(_Up* __p, _Args&&... __args)
  136 	{ ::new((void *)__p) _Up(std::forward<_Args>(__args)...); }
  136 	{ ::new((void *)__p) _Up(std::forward<_Args>(__args)...); }
  140 	destroy(_Up* __p) { __p->~_Up(); }
  160     operator!=(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
  160     operator!=(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
usr/include/c++/7.4.0/initializer_list
   50       typedef _E 		value_type;
   51       typedef const _E& 	reference;
   52       typedef const _E& 	const_reference;
   54       typedef const _E* 	iterator;
   55       typedef const _E* 	const_iterator;
usr/include/c++/7.4.0/tuple
   56     struct __is_empty_non_tuple : is_empty<_Tp> { };
  125       constexpr _Head_base(const _Head& __h)
  132         constexpr _Head_base(_UHead&& __h)
  159       static constexpr _Head&
  162       static constexpr const _Head&
  165       _Head _M_head_impl;
  186     : public _Tuple_impl<_Idx + 1, _Tail...>,
  187       private _Head_base<_Idx, _Head>
  191       typedef _Tuple_impl<_Idx + 1, _Tail...> _Inherited;
  192       typedef _Head_base<_Idx, _Head> _Base;
  194       static constexpr _Head&
  197       static constexpr const _Head&
  210       constexpr _Tuple_impl(const _Head& __head, const _Tail&... __tail)
  210       constexpr _Tuple_impl(const _Head& __head, const _Tail&... __tail)
  216         constexpr _Tuple_impl(_UHead&& __head, _UTail&&... __tail)
  216         constexpr _Tuple_impl(_UHead&& __head, _UTail&&... __tail)
  230         constexpr _Tuple_impl(const _Tuple_impl<_Idx, _UElements...>& __in)
  235         constexpr _Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&& __in)
  235         constexpr _Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&& __in)
  242 	_Tuple_impl(allocator_arg_t __tag, const _Alloc& __a)
  248 		    const _Head& __head, const _Tail&... __tail)
  248 		    const _Head& __head, const _Tail&... __tail)
  262         _Tuple_impl(allocator_arg_t __tag, const _Alloc& __a,
  268 	_Tuple_impl(allocator_arg_t __tag, const _Alloc& __a,
  344     : private _Head_base<_Idx, _Head>
  348       typedef _Head_base<_Idx, _Head> _Base;
  350       static constexpr _Head&
  353       static constexpr const _Head&
  360       constexpr _Tuple_impl(const _Head& __head)
  365         constexpr _Tuple_impl(_UHead&& __head)
  376         constexpr _Tuple_impl(const _Tuple_impl<_Idx, _UHead>& __in)
  380         constexpr _Tuple_impl(_Tuple_impl<_Idx, _UHead>&& __in)
  390 		    const _Head& __head)
  473       return __and_<is_constructible<_Elements, const _UElements&>...>::value;
  473       return __and_<is_constructible<_Elements, const _UElements&>...>::value;
  479       return __and_<is_convertible<const _UElements&, _Elements>...>::value;
  479       return __and_<is_convertible<const _UElements&, _Elements>...>::value;
  485       return __and_<is_constructible<_Elements, _UElements&&>...>::value;
  485       return __and_<is_constructible<_Elements, _UElements&&>...>::value;
  491       return __and_<is_convertible<_UElements&&, _Elements>...>::value;
  491       return __and_<is_convertible<_UElements&&, _Elements>...>::value;
  508       return  __not_<is_same<tuple<_Elements...>,
  556     class tuple : public _Tuple_impl<0, _Elements...>
  558       typedef _Tuple_impl<0, _Elements...> _Inherited;
  598             _Elements...>;
  608         constexpr tuple(const _Elements&... __elements)
  619       explicit constexpr tuple(const _Elements&... __elements)
  628                       _Elements...>;
  636                       _Elements...>;
  646         constexpr tuple(_UElements&&... __elements)
  668             _Elements...>;
  730 	      const _Elements&... __elements)
  741                        const _Elements&... __elements)
  907     class tuple<_T1, _T2> : public _Tuple_impl<0, _T1, _T2>
  907     class tuple<_T1, _T2> : public _Tuple_impl<0, _T1, _T2>
  909       typedef _Tuple_impl<0, _T1, _T2> _Inherited;
  909       typedef _Tuple_impl<0, _T1, _T2> _Inherited;
  939         _TC<is_same<_Dummy, void>::value, _T1, _T2>;
  939         _TC<is_same<_Dummy, void>::value, _T1, _T2>;
  947         constexpr tuple(const _T1& __a1, const _T2& __a2)
  947         constexpr tuple(const _T1& __a1, const _T2& __a2)
  956         explicit constexpr tuple(const _T1& __a1, const _T2& __a2)
  956         explicit constexpr tuple(const _T1& __a1, const _T2& __a2)
  961       using _TMC = _TC<true, _T1, _T2>;
  961       using _TMC = _TC<true, _T1, _T2>;
  971         constexpr tuple(_U1&& __a1, _U2&& __a2)
  971         constexpr tuple(_U1&& __a1, _U2&& __a2)
  995         constexpr tuple(const tuple<_U1, _U2>& __in)
  995         constexpr tuple(const tuple<_U1, _U2>& __in)
 1013         constexpr tuple(tuple<_U1, _U2>&& __in)
 1013         constexpr tuple(tuple<_U1, _U2>&& __in)
 1066 	tuple(allocator_arg_t __tag, const _Alloc& __a)
 1078 	      const _T1& __a1, const _T2& __a2)
 1078 	      const _T1& __a1, const _T2& __a2)
 1090 	      const _T1& __a1, const _T2& __a2)
 1090 	      const _T1& __a1, const _T2& __a2)
 1280     : tuple_element<__i - 1, tuple<_Tail...> > { };
 1288       typedef _Head type;
 1302     constexpr _Head&
 1303     __get_helper(_Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
 1303     __get_helper(_Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
 1307     constexpr const _Head&
 1308     __get_helper(const _Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
 1308     __get_helper(const _Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
 1309     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
 1309     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
 1313     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
 1313     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
 1313     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
 1314     get(tuple<_Elements...>& __t) noexcept
 1319     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
 1319     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
 1319     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
 1320     get(const tuple<_Elements...>& __t) noexcept
 1325     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
 1325     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
 1325     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
 1326     get(tuple<_Elements...>&& __t) noexcept
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  326     : public __is_integral_helper<typename remove_cv<_Tp>::type>::type
  354     : public __is_floating_point_helper<typename remove_cv<_Tp>::type>::type
  381     : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
  567     : public __is_null_pointer_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  588     : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  601     : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
  602                           is_void<_Tp>>>::type
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  611     : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  612                    is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
  631     : public __is_member_pointer_helper<typename remove_cv<_Tp>::type>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  777     : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
  798       typedef decltype(__test<_Tp>(0)) type;
  811                remove_all_extents<_Tp>::type>::type
  825     : public __is_destructible_safe<_Tp>::type
  984       typedef decltype(__test<_Tp, _Arg>(0)) type;
  989     : public __and_<is_destructible<_Tp>,
  990                     __is_direct_constructible_impl<_Tp, _Arg>>
 1072 			 __is_direct_constructible_ref_cast<_Tp, _Arg>,
 1073 			 __is_direct_constructible_new_safe<_Tp, _Arg>
 1079     : public __is_direct_constructible_new<_Tp, _Arg>::type
 1119     : public __is_direct_constructible<_Tp, _Arg>
 1130     : public __is_constructible_impl<_Tp, _Args...>::type
 1142     : public is_constructible<_Tp, const _Tp&>
 1142     : public is_constructible<_Tp, const _Tp&>
 1148     : public __is_copy_constructible_impl<_Tp>
 1160     : public is_constructible<_Tp, _Tp&&>
 1160     : public is_constructible<_Tp, _Tp&&>
 1166     : public __is_move_constructible_impl<_Tp>
 1215     : public __and_<is_constructible<_Tp, _Args...>,
 1216 		    __is_nt_constructible_impl<_Tp, _Args...>>
 1246     : public is_nothrow_constructible<_Tp, _Tp&&>
 1246     : public is_nothrow_constructible<_Tp, _Tp&&>
 1252     : public __is_nothrow_move_constructible_impl<_Tp>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1286     : public is_assignable<_Tp&, const _Tp&>
 1292     : public __is_copy_assignable_impl<_Tp>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1304     : public is_assignable<_Tp&, _Tp&&>
 1310     : public __is_move_assignable_impl<_Tp>
 1526 	static void __test_aux(_To1);
 1538       typedef decltype(__test<_From, _To>(0)) type;
 1545     : public __is_convertible_helper<_From, _To>::type
 1554     { typedef _Tp     type; };
 1558     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1629     { typedef _Tp   type; };
 1633     { typedef _Tp   type; };
 1645     { typedef _Tp&   type; };
 1650     : public __add_lvalue_reference_helper<_Tp>
 1659     { typedef _Tp&&   type; };
 1955     { typedef _Tp     type; };
 2574       typename remove_reference<_Tp>::type>::type>::type
utils/unittest/googlemock/include/gmock/gmock-generated-matchers.h
  590         typename internal::DecayArray<T1>::type,
  591         typename internal::DecayArray<T2>::type> >
  592 ElementsAre(const T1& e1, const T2& e2) {
  592 ElementsAre(const T1& e1, const T2& e2) {
  594       typename internal::DecayArray<T1>::type,
  595       typename internal::DecayArray<T2>::type> Args;
  632         typename internal::DecayArray<T1>::type,
  633         typename internal::DecayArray<T2>::type,
  634         typename internal::DecayArray<T3>::type,
  635         typename internal::DecayArray<T4>::type,
  636         typename internal::DecayArray<T5>::type> >
  637 ElementsAre(const T1& e1, const T2& e2, const T3& e3, const T4& e4,
  637 ElementsAre(const T1& e1, const T2& e2, const T3& e3, const T4& e4,
  637 ElementsAre(const T1& e1, const T2& e2, const T3& e3, const T4& e4,
  637 ElementsAre(const T1& e1, const T2& e2, const T3& e3, const T4& e4,
  638     const T5& e5) {
  640       typename internal::DecayArray<T1>::type,
  641       typename internal::DecayArray<T2>::type,
  642       typename internal::DecayArray<T3>::type,
  643       typename internal::DecayArray<T4>::type,
  644       typename internal::DecayArray<T5>::type> Args;
  652         typename internal::DecayArray<T1>::type,
  653         typename internal::DecayArray<T2>::type,
  654         typename internal::DecayArray<T3>::type,
  655         typename internal::DecayArray<T4>::type,
  656         typename internal::DecayArray<T5>::type,
  657         typename internal::DecayArray<T6>::type> >
  658 ElementsAre(const T1& e1, const T2& e2, const T3& e3, const T4& e4,
  658 ElementsAre(const T1& e1, const T2& e2, const T3& e3, const T4& e4,
  658 ElementsAre(const T1& e1, const T2& e2, const T3& e3, const T4& e4,
  658 ElementsAre(const T1& e1, const T2& e2, const T3& e3, const T4& e4,
  659     const T5& e5, const T6& e6) {
  659     const T5& e5, const T6& e6) {
  661       typename internal::DecayArray<T1>::type,
  662       typename internal::DecayArray<T2>::type,
  663       typename internal::DecayArray<T3>::type,
  664       typename internal::DecayArray<T4>::type,
  665       typename internal::DecayArray<T5>::type,
  666       typename internal::DecayArray<T6>::type> Args;
utils/unittest/googlemock/include/gmock/gmock-matchers.h
  206   bool operator()(const A& a, const B& b) const { return a == b; }
  206   bool operator()(const A& a, const B& b) const { return a == b; }
  519   static Matcher<T> Cast(const M& polymorphic_matcher_or_value) {
  536             internal::ImplicitlyConvertible<M, Matcher<T> >::value>());
  540   static Matcher<T> CastImpl(const M& value, BooleanConstant<false>) {
  547   static Matcher<T> CastImpl(const M& polymorphic_matcher_or_value,
  612 inline Matcher<T> MatcherCast(const M& matcher) {
  613   return internal::MatcherCastImpl<T, M>::Cast(matcher);
  897   explicit ComparisonBase(const Rhs& rhs) : rhs_(rhs) {}
  907     explicit Impl(const Rhs& rhs) : rhs_(rhs) {}
  921     Rhs rhs_;
  924   Rhs rhs_;
  929 class EqMatcher : public ComparisonBase<EqMatcher<Rhs>, Rhs, AnyEq> {
  929 class EqMatcher : public ComparisonBase<EqMatcher<Rhs>, Rhs, AnyEq> {
  931   explicit EqMatcher(const Rhs& rhs)
 3454   Matcher<Target> operator()(const Arg& a) const {
 3760 inline internal::EqMatcher<T> Eq(T x) { return internal::EqMatcher<T>(x); }
 3760 inline internal::EqMatcher<T> Eq(T x) { return internal::EqMatcher<T>(x); }
utils/unittest/googlemock/include/gmock/internal/gmock-internal-utils.h
  355 template <typename T> struct DecayArray { typedef T type; };  // NOLINT
utils/unittest/googletest/include/gtest/gtest-printers.h
  223 void DefaultPrintNonContainerTo(const T& value, ::std::ostream* os) {
  373                     const C& container, ::std::ostream* os) {
  439                     const T& value, ::std::ostream* os) {
  455 void PrintTo(const T& value, ::std::ostream* os) {
  478   DefaultPrintTo(IsContainerTest<T>(0), is_pointer<T>(), value, os);
  699   static void Print(const T& value, ::std::ostream* os) {
  853 void UniversalPrint(const T& value, ::std::ostream* os) {
  856   typedef T T1;
utils/unittest/googletest/include/gtest/internal/custom/raw-ostream.h
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   35 auto printable(const T &V) -> decltype(StreamSwitch<T>::printable(V)) {
   37   return StreamSwitch<T>::printable(V);
   54   const T& V;
   55   friend std::ostream &operator<<(std::ostream &S, const RawStreamProxy<T> &V) {
   69   static const RawStreamProxy<T> printable(const T &V) { return {V}; }
   69   static const RawStreamProxy<T> printable(const T &V) { return {V}; }
utils/unittest/googletest/include/gtest/internal/gtest-internal.h
  830 struct AddReference { typedef T& type; };  // NOLINT
  863   static typename AddReference<From>::type MakeFrom();