|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/ADT/SmallVector.h 75 AlignedCharArrayUnion<T> FirstEl;
114 using value_type = T;
115 using iterator = T *;
116 using const_iterator = const T *;
121 using reference = T &;
122 using const_reference = const T &;
123 using pointer = T *;
124 using const_pointer = const T *;
179 class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
183 static void destroy_range(T *S, T *E) {
183 static void destroy_range(T *S, T *E) {
211 void push_back(const T &Elt) {
214 ::new ((void*) this->end()) T(Elt);
218 void push_back(T &&Elt) {
240 T *NewElts = static_cast<T*>(llvm::safe_malloc(NewCapacity*sizeof(T)));
240 T *NewElts = static_cast<T*>(llvm::safe_malloc(NewCapacity*sizeof(T)));
315 class SmallVectorImpl : public SmallVectorTemplateBase<T> {
316 using SuperClass = SmallVectorTemplateBase<T>;
357 void resize(size_type N, const T &NV) {
374 LLVM_NODISCARD T pop_back_val() {
397 void append(size_type NumInputs, const T &Elt) {
405 void append(std::initializer_list<T> IL) {
412 void assign(size_type NumElts, const T &Elt) {
429 void assign(std::initializer_list<T> IL) {
467 iterator insert(iterator I, T &&Elt) {
497 iterator insert(iterator I, const T &Elt) {
526 iterator insert(iterator I, size_type NumToInsert, const T &Elt) {
637 void insert(iterator I, std::initializer_list<T> IL) {
820 AlignedCharArrayUnion<T> InlineElts[N];
837 class SmallVector : public SmallVectorImpl<T>, SmallVectorStorage<T, N> {
837 class SmallVector : public SmallVectorImpl<T>, SmallVectorStorage<T, N> {
846 explicit SmallVector(size_t Size, const T &Value = T())
865 SmallVector(std::initializer_list<T> IL) : SmallVectorImpl<T>(N) {
884 SmallVector(SmallVectorImpl<T> &&RHS) : SmallVectorImpl<T>(N) {
include/llvm/Support/AlignOf.h 30 T t;
39 template <typename T> union SizerImpl<T> { char arr[sizeof(T)]; };
50 llvm::detail::SizerImpl<T, Ts...>)];
include/llvm/Support/type_traits.h 91 T t;
122 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
122 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
122 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
130 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
130 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
130 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
145 std::is_copy_constructible<detail::trivial_helper<T>>::value;
147 !std::is_copy_constructible<T>::value;
151 std::is_move_constructible<detail::trivial_helper<T>>::value;
153 !std::is_move_constructible<T>::value;
157 is_copy_assignable<detail::trivial_helper<T>>::value;
159 !is_copy_assignable<T>::value;
163 is_move_assignable<detail::trivial_helper<T>>::value;
165 !is_move_assignable<T>::value;
169 std::is_destructible<detail::trivial_helper<T>>::value;
tools/lldb/include/lldb/Core/Disassembler.h 189 std::vector<Operand> m_children;
197 static Operand BuildRegister(ConstString &r);
198 static Operand BuildImmediate(lldb::addr_t imm, bool neg);
199 static Operand BuildImmediate(int64_t imm);
200 static Operand BuildDereference(const Operand &ref);
200 static Operand BuildDereference(const Operand &ref);
201 static Operand BuildSum(const Operand &lhs, const Operand &rhs);
201 static Operand BuildSum(const Operand &lhs, const Operand &rhs);
201 static Operand BuildSum(const Operand &lhs, const Operand &rhs);
202 static Operand BuildProduct(const Operand &lhs, const Operand &rhs);
202 static Operand BuildProduct(const Operand &lhs, const Operand &rhs);
202 static Operand BuildProduct(const Operand &lhs, const Operand &rhs);
205 virtual bool ParseOperands(llvm::SmallVectorImpl<Operand> &operands) {
240 std::function<bool(const Instruction::Operand &)>
241 MatchBinaryOp(std::function<bool(const Instruction::Operand &)> base,
242 std::function<bool(const Instruction::Operand &)> left,
243 std::function<bool(const Instruction::Operand &)> right);
245 std::function<bool(const Instruction::Operand &)>
246 MatchUnaryOp(std::function<bool(const Instruction::Operand &)> base,
247 std::function<bool(const Instruction::Operand &)> child);
249 std::function<bool(const Instruction::Operand &)>
252 std::function<bool(const Instruction::Operand &)> FetchRegOp(ConstString ®);
254 std::function<bool(const Instruction::Operand &)> MatchImmOp(int64_t imm);
256 std::function<bool(const Instruction::Operand &)> FetchImmOp(int64_t &imm);
258 std::function<bool(const Instruction::Operand &)>
259 MatchOpType(Instruction::Operand::Type type);
tools/lldb/include/lldb/Expression/DWARFExpression.h 249 bool MatchesOperand(StackFrame &frame, const Instruction::Operand &op);
tools/lldb/source/Core/Disassembler.cpp 1345 Instruction::Operand Instruction::Operand::BuildRegister(ConstString &r) {
1346 Operand ret;
1352 Instruction::Operand Instruction::Operand::BuildImmediate(lldb::addr_t imm,
1354 Operand ret;
1361 Instruction::Operand Instruction::Operand::BuildImmediate(int64_t imm) {
1362 Operand ret;
1374 Instruction::Operand
1375 Instruction::Operand::BuildDereference(const Operand &ref) {
1376 Operand ret;
1382 Instruction::Operand Instruction::Operand::BuildSum(const Operand &lhs,
1382 Instruction::Operand Instruction::Operand::BuildSum(const Operand &lhs,
1383 const Operand &rhs) {
1384 Operand ret;
1390 Instruction::Operand Instruction::Operand::BuildProduct(const Operand &lhs,
1390 Instruction::Operand Instruction::Operand::BuildProduct(const Operand &lhs,
1391 const Operand &rhs) {
1392 Operand ret;
1398 std::function<bool(const Instruction::Operand &)>
1400 std::function<bool(const Instruction::Operand &)> base,
1401 std::function<bool(const Instruction::Operand &)> left,
1402 std::function<bool(const Instruction::Operand &)> right) {
1410 std::function<bool(const Instruction::Operand &)>
1412 std::function<bool(const Instruction::Operand &)> base,
1413 std::function<bool(const Instruction::Operand &)> child) {
1419 std::function<bool(const Instruction::Operand &)>
1422 return (op.m_type == Instruction::Operand::Type::Register &&
1428 std::function<bool(const Instruction::Operand &)>
1431 if (op.m_type != Instruction::Operand::Type::Register) {
1439 std::function<bool(const Instruction::Operand &)>
1442 return (op.m_type == Instruction::Operand::Type::Immediate &&
1448 std::function<bool(const Instruction::Operand &)>
1451 if (op.m_type != Instruction::Operand::Type::Immediate) {
1463 std::function<bool(const Instruction::Operand &)>
1464 lldb_private::OperandMatchers::MatchOpType(Instruction::Operand::Type type) {
tools/lldb/source/Expression/DWARFExpression.cpp 2973 const Instruction::Operand &operand) {
3007 MatchUnaryOp(MatchOpType(Instruction::Operand::Type::Dereference),
3013 MatchOpType(Instruction::Operand::Type::Dereference),
3014 MatchBinaryOp(MatchOpType(Instruction::Operand::Type::Sum),
3044 MatchUnaryOp(MatchOpType(Instruction::Operand::Type::Dereference),
3050 MatchOpType(Instruction::Operand::Type::Dereference),
3051 MatchBinaryOp(MatchOpType(Instruction::Operand::Type::Sum),
tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp 452 static std::pair<Operand, llvm::StringRef::const_iterator>
455 Operand ret;
456 ret.m_type = Operand::Type::Register;
493 static std::pair<Operand, llvm::StringRef::const_iterator>
496 Operand ret;
497 ret.m_type = Operand::Type::Immediate;
551 static std::pair<Operand, llvm::StringRef::const_iterator>
554 std::pair<Operand, llvm::StringRef::const_iterator> offset_and_iterator =
566 std::pair<Operand, llvm::StringRef::const_iterator> base_and_iterator =
579 std::pair<Operand, llvm::StringRef::const_iterator> index_and_iterator =
592 std::pair<Operand, llvm::StringRef::const_iterator>
605 Operand product;
606 product.m_type = Operand::Type::Product;
610 Operand index;
611 index.m_type = Operand::Type::Sum;
616 Operand offset;
617 offset.m_type = Operand::Type::Sum;
621 Operand deref;
622 deref.m_type = Operand::Type::Dereference;
626 Operand deref;
627 deref.m_type = Operand::Type::Dereference;
634 static std::pair<Operand, llvm::StringRef::const_iterator>
637 std::pair<Operand, llvm::StringRef::const_iterator> offset_and_iterator =
649 std::pair<Operand, llvm::StringRef::const_iterator> base_and_iterator =
663 Operand offset;
664 offset.m_type = Operand::Type::Sum;
668 Operand deref;
669 deref.m_type = Operand::Type::Dereference;
673 Operand deref;
674 deref.m_type = Operand::Type::Dereference;
681 static std::pair<Operand, llvm::StringRef::const_iterator>
690 std::pair<Operand, llvm::StringRef::const_iterator> base_and_iterator =
703 std::pair<Operand, llvm::StringRef::const_iterator> offset_and_iterator =
714 Operand offset;
715 offset.m_type = Operand::Type::Sum;
719 Operand deref;
720 deref.m_type = Operand::Type::Dereference;
726 static std::pair<Operand, llvm::StringRef::const_iterator>
735 std::pair<Operand, llvm::StringRef::const_iterator> base_and_iterator =
748 Operand deref;
749 deref.m_type = Operand::Type::Dereference;
754 static void DumpOperand(const Operand &op, Stream &s) {
756 case Operand::Type::Dereference:
760 case Operand::Type::Immediate:
766 case Operand::Type::Invalid:
769 case Operand::Type::Product:
776 case Operand::Type::Register:
779 case Operand::Type::Sum:
790 llvm::SmallVectorImpl<Instruction::Operand> &operands) override {
803 Operand operand;
856 for (const Operand &operand : operands) {
tools/lldb/source/Target/StackFrame.cpp 1241 std::pair<const Instruction::Operand *, int64_t>
1242 GetBaseExplainingValue(const Instruction::Operand &operand,
1245 case Instruction::Operand::Type::Dereference:
1246 case Instruction::Operand::Type::Immediate:
1247 case Instruction::Operand::Type::Invalid:
1248 case Instruction::Operand::Type::Product:
1251 case Instruction::Operand::Type::Sum: {
1252 const Instruction::Operand *immediate_child = nullptr;
1253 const Instruction::Operand *variable_child = nullptr;
1254 if (operand.m_children[0].m_type == Instruction::Operand::Type::Immediate) {
1258 Instruction::Operand::Type::Immediate) {
1271 std::pair<const Instruction::Operand *, int64_t> base_and_offset =
1284 case Instruction::Operand::Type::Register: {
1304 std::pair<const Instruction::Operand *, int64_t>
1305 GetBaseExplainingDereference(const Instruction::Operand &operand,
1308 if (operand.m_type == Instruction::Operand::Type::Dereference) {
1341 llvm::SmallVector<Instruction::Operand, 3> operands;
1353 for (const Instruction::Operand &operand : operands) {
1354 std::pair<const Instruction::Operand *, int64_t> base_and_offset =
1362 case Instruction::Operand::Type::Immediate: {
1386 case Instruction::Operand::Type::Register: {
1524 Instruction::Operand op =
1525 offset ? Instruction::Operand::BuildDereference(
1526 Instruction::Operand::BuildSum(
1527 Instruction::Operand::BuildRegister(reg),
1528 Instruction::Operand::BuildImmediate(offset)))
1529 : Instruction::Operand::BuildDereference(
1530 Instruction::Operand::BuildRegister(reg));
1573 if (!MatchUnaryOp(MatchOpType(Instruction::Operand::Type::Dereference),
1576 MatchOpType(Instruction::Operand::Type::Dereference),
1577 MatchBinaryOp(MatchOpType(Instruction::Operand::Type::Sum),
1583 llvm::SmallVector<Instruction::Operand, 1> operands;
1591 case Instruction::Operand::Type::Immediate: {
1626 llvm::SmallVector<Instruction::Operand, 2> operands;
1631 Instruction::Operand *origin_operand = nullptr;
1655 MatchOpType(Instruction::Operand::Type::Dereference),
1658 MatchOpType(Instruction::Operand::Type::Dereference),
1659 MatchBinaryOp(MatchOpType(Instruction::Operand::Type::Sum),
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)
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
104 : public __and_<__not_<is_nothrow_move_constructible<_Tp>>,
105 is_copy_constructible<_Tp>>::type { };
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)...); }
75 { ::new(static_cast<void*>(__p)) _T1(std::forward<_Args>(__args)...); }
97 _Destroy(_Tp* __pointer)
204 allocator<_Tp>&)
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)
342 : first(std::forward<_U1>(__x)), second(std::forward<_U2>(__y)) { }
379 __and_<is_copy_assignable<_T1>,
390 __and_<is_move_assignable<_T1>,
522 constexpr pair<typename __decay_and_strip<_T1>::__type,
524 make_pair(_T1&& __x, _T2&& __y)
526 typedef typename __decay_and_strip<_T1>::__type __ds_type1;
529 return __pair_type(std::forward<_T1>(__x), std::forward<_T2>(__y));
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*
1483 _M_realloc_insert(iterator __position, _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)...); }
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 125 constexpr _Head_base(const _Head& __h)
132 constexpr _Head_base(_UHead&& __h)
159 static constexpr _Head&
162 static constexpr const _Head&
194 static constexpr _Head&
197 static constexpr const _Head&
210 constexpr _Tuple_impl(const _Head& __head, const _Tail&... __tail)
216 constexpr _Tuple_impl(_UHead&& __head, _UTail&&... __tail)
248 const _Head& __head, const _Tail&... __tail)
473 return __and_<is_constructible<_Elements, const _UElements&>...>::value;
479 return __and_<is_convertible<const _UElements&, _Elements>...>::value;
485 return __and_<is_constructible<_Elements, _UElements&&>...>::value;
491 return __and_<is_convertible<_UElements&&, _Elements>...>::value;
947 constexpr tuple(const _T1& __a1, const _T2& __a2)
956 explicit constexpr tuple(const _T1& __a1, const _T2& __a2)
971 constexpr tuple(_U1&& __a1, _U2&& __a2)
1078 const _T1& __a1, const _T2& __a2)
1090 const _T1& __a1, const _T2& __a2)
1241 operator=(const pair<_U1, _U2>& __in)
1250 operator=(pair<_U1, _U2>&& __in)
1252 this->_M_head(*this) = std::forward<_U1>(__in.first);
1588 constexpr tuple<_Elements&...>
1589 tie(_Elements&... __args) 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; };
1563 { typedef _Tp type; };
1574 remove_const<typename remove_volatile<_Tp>::type>::type type;
1629 { typedef _Tp type; };
1633 { typedef _Tp type; };
1659 { typedef _Tp&& type; };
1955 { typedef _Tp type; };
2104 { typedef typename remove_cv<_Up>::type __type; };
2118 typedef typename remove_reference<_Tp>::type __remove_type;
2131 typedef _Tp __type;
2144 typename decay<_Tp>::type>::__type __type;