|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/ADT/Optional.h 144 T value;
160 explicit OptionalStorage(in_place_t, Args &&... args)
161 : value(std::forward<Args>(args)...), hasVal(true) {}
172 T &getValue() LLVM_LVALUE_FUNCTION noexcept {
176 T const &getValue() const LLVM_LVALUE_FUNCTION noexcept {
181 T &&getValue() && noexcept {
197 ::new ((void *)std::addressof(value)) T(y);
206 ::new ((void *)std::addressof(value)) T(std::move(y));
216 optional_detail::OptionalStorage<T> Storage;
219 using value_type = T;
224 Optional(const T &y) : Storage(optional_detail::in_place_t{}, y) {}
227 Optional(T &&y) : Storage(optional_detail::in_place_t{}, std::move(y)) {}
230 Optional &operator=(T &&y) {
241 static inline Optional create(const T *y) {
245 Optional &operator=(const T &y) {
253 const T *getPointer() const { return &Storage.getValue(); }
254 T *getPointer() { return &Storage.getValue(); }
255 const T &getValue() const LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
256 T &getValue() LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
260 const T *operator->() const { return getPointer(); }
261 T *operator->() { return getPointer(); }
262 const T &operator*() const LLVM_LVALUE_FUNCTION { return getValue(); }
263 T &operator*() LLVM_LVALUE_FUNCTION { return getValue(); }
266 constexpr T getValueOr(U &&value) const LLVM_LVALUE_FUNCTION {
271 T &&getValue() && { return std::move(Storage.getValue()); }
272 T &&operator*() && { return std::move(Storage.getValue()); }
275 T getValueOr(U &&value) && {
316 bool operator==(const Optional<T> &X, NoneType) {
321 bool operator==(NoneType, const Optional<T> &X) {
367 template <typename T> bool operator==(const Optional<T> &X, const T &Y) {
367 template <typename T> bool operator==(const Optional<T> &X, const T &Y) {
371 template <typename T> bool operator==(const T &X, const Optional<T> &Y) {
371 template <typename T> bool operator==(const T &X, const Optional<T> &Y) {
include/llvm/ADT/STLExtras.h 1224 bool is_contained(R &&Range, const E &Element) {
include/llvm/ADT/StringSwitch.h 48 Optional<T> Result;
67 StringSwitch &Case(StringLiteral S, T Value) {
74 StringSwitch& EndsWith(StringLiteral S, T Value) {
81 StringSwitch& StartsWith(StringLiteral S, T Value) {
88 StringSwitch &Cases(StringLiteral S0, StringLiteral S1, T Value) {
93 T Value) {
98 StringLiteral S3, T Value) {
103 StringLiteral S3, StringLiteral S4, T Value) {
109 T Value) {
115 StringLiteral S6, T Value) {
121 StringLiteral S6, StringLiteral S7, T Value) {
128 T Value) {
135 StringLiteral S9, T Value) {
140 StringSwitch &CaseLower(StringLiteral S, T Value) {
147 StringSwitch &EndsWithLower(StringLiteral S, T Value) {
154 StringSwitch &StartsWithLower(StringLiteral S, T Value) {
161 StringSwitch &CasesLower(StringLiteral S0, StringLiteral S1, T Value) {
166 T Value) {
171 StringLiteral S3, T Value) {
176 StringLiteral S3, StringLiteral S4, T Value) {
181 R Default(T Value) {
181 R Default(T Value) {
188 operator R() {
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/clang/include/clang/Driver/Action.h 102 types::ID Type;
128 Action(ActionClass Kind, types::ID Type) : Action(Kind, ActionList(), Type) {}
129 Action(ActionClass Kind, Action *Input, types::ID Type)
133 Action(ActionClass Kind, const ActionList &Inputs, types::ID Type)
142 types::ID getType() const { return Type; }
220 InputAction(const llvm::opt::Arg &Input, types::ID Type);
337 OffloadAction(const DeviceDependences &DDeps, types::ID Ty);
379 JobAction(ActionClass Kind, Action *Input, types::ID Type);
380 JobAction(ActionClass Kind, const ActionList &Inputs, types::ID Type);
393 PreprocessJobAction(Action *Input, types::ID OutputType);
404 PrecompileJobAction(ActionClass Kind, Action *Input, types::ID OutputType);
407 PrecompileJobAction(Action *Input, types::ID OutputType);
421 HeaderModulePrecompileJobAction(Action *Input, types::ID OutputType,
439 AnalyzeJobAction(Action *Input, types::ID OutputType);
450 MigrateJobAction(Action *Input, types::ID OutputType);
461 CompileJobAction(Action *Input, types::ID OutputType);
472 BackendJobAction(Action *Input, types::ID OutputType);
483 AssembleJobAction(Action *Input, types::ID OutputType);
494 IfsMergeJobAction(ActionList &Inputs, types::ID Type);
505 LinkJobAction(ActionList &Inputs, types::ID Type);
516 LipoJobAction(ActionList &Inputs, types::ID Type);
527 DsymutilJobAction(ActionList &Inputs, types::ID Type);
538 VerifyJobAction(ActionClass Kind, Action *Input, types::ID Type);
550 VerifyDebugInfoJobAction(Action *Input, types::ID Type);
561 VerifyPCHJobAction(Action *Input, types::ID Type);
633 OffloadWrapperJobAction(ActionList &Inputs, types::ID Type);
tools/clang/include/clang/Driver/Compilation.h 196 template <typename T, typename... Args> T *MakeAction(Args &&... Arg) {
197 T *RawPtr = new T(std::forward<Args>(Arg)...);
tools/clang/include/clang/Driver/Driver.h 168 typedef SmallVector<std::pair<types::ID, const llvm::opt::Arg *>, 16>
407 StringRef Value, types::ID Ty,
tools/clang/include/clang/Driver/ToolChain.h 328 virtual types::ID LookupTypeForExtension(StringRef Ext) const;
490 types::ID InputType = types::TY_INVALID) const;
499 types::ID InputType = types::TY_INVALID) const;
tools/clang/include/clang/Driver/Types.h 32 const char *getTypeName(ID Id);
37 ID getPreprocessedType(ID Id);
37 ID getPreprocessedType(ID Id);
42 ID getPrecompiledType(ID Id);
42 ID getPrecompiledType(ID Id);
46 const char *getTypeTempSuffix(ID Id, bool CLMode = false);
49 bool onlyAssembleType(ID Id);
52 bool onlyPrecompileType(ID Id);
57 bool canTypeBeUserSpecified(ID Id);
62 bool appendSuffixForType(ID Id);
67 bool canLipoType(ID Id);
70 bool isAcceptedByClang(ID Id);
73 bool isCXX(ID Id);
76 bool isLLVMIR(ID Id);
79 bool isCuda(ID Id);
82 bool isHIP(ID Id);
85 bool isObjC(ID Id);
90 bool isSrcFile(ID Id);
94 ID lookupTypeForExtension(llvm::StringRef Ext);
98 ID lookupTypeForTypeSpecifier(const char *Name);
103 ID Id,
106 llvm::opt::DerivedArgList &DAL, ID Id,
111 ID lookupCXXTypeForCType(ID Id);
111 ID lookupCXXTypeForCType(ID Id);
115 ID lookupHeaderTypeForSourceType(ID Id);
115 ID lookupHeaderTypeForSourceType(ID Id);
tools/clang/lib/Driver/Action.cpp 166 InputAction::InputAction(const Arg &_Input, types::ID _Type)
184 OffloadAction::OffloadAction(const DeviceDependences &DDeps, types::ID Ty)
309 JobAction::JobAction(ActionClass Kind, Action *Input, types::ID Type)
312 JobAction::JobAction(ActionClass Kind, const ActionList &Inputs, types::ID Type)
317 PreprocessJobAction::PreprocessJobAction(Action *Input, types::ID OutputType)
322 PrecompileJobAction::PrecompileJobAction(Action *Input, types::ID OutputType)
326 types::ID OutputType)
334 Action *Input, types::ID OutputType, const char *ModuleName)
340 AnalyzeJobAction::AnalyzeJobAction(Action *Input, types::ID OutputType)
345 MigrateJobAction::MigrateJobAction(Action *Input, types::ID OutputType)
350 CompileJobAction::CompileJobAction(Action *Input, types::ID OutputType)
355 BackendJobAction::BackendJobAction(Action *Input, types::ID OutputType)
360 AssembleJobAction::AssembleJobAction(Action *Input, types::ID OutputType)
365 IfsMergeJobAction::IfsMergeJobAction(ActionList &Inputs, types::ID Type)
370 LinkJobAction::LinkJobAction(ActionList &Inputs, types::ID Type)
375 LipoJobAction::LipoJobAction(ActionList &Inputs, types::ID Type)
380 DsymutilJobAction::DsymutilJobAction(ActionList &Inputs, types::ID Type)
386 types::ID Type)
395 types::ID Type)
400 VerifyPCHJobAction::VerifyPCHJobAction(Action *Input, types::ID Type)
416 types::ID Type)
tools/clang/lib/Driver/Driver.cpp 2013 types::ID Ty, bool TypoCorrect) const {
2067 types::ID InputType = types::TY_Nothing;
2099 types::ID Ty = types::TY_INVALID;
2139 types::ID OldTy = Ty;
2391 auto Ty = IA->getType() == types::TY_HIP ? types::TY_HIP_DEVICE
3258 types::ID InputType = I.first;
3306 const types::ID HeaderType = lookupHeaderTypeForSourceType(InputType);
3391 types::ID InputType = I.first;
3532 types::ID OutputTy;
3552 types::ID OutputTy = getPrecompiledType(Input->getType());
3600 types::ID Output =
3605 types::ID Output =
4333 types::ID FileType) {
tools/clang/lib/Driver/InputInfo.h 42 types::ID Type;
45 static types::ID GetActionType(const Action *A) {
54 InputInfo(types::ID _Type, const char *_Filename, const char *_BaseInput)
63 InputInfo(types::ID _Type, const llvm::opt::Arg *_InputArg,
77 types::ID getType() const { return Type; }
tools/clang/lib/Driver/ToolChain.cpp 543 types::ID ToolChain::LookupTypeForExtension(StringRef Ext) const {
593 types::ID InputType) const {
714 types::ID InputType) const {
tools/clang/lib/Driver/ToolChains/Clang.cpp 326 static void addExceptionArgs(const ArgList &Args, types::ID InputType,
3414 types::ID Expected = HeaderModuleInput.getType();
4117 types::ID InputType = Input.getType();
5781 void Clang::AddClangCLArgs(const ArgList &Args, types::ID InputType,
tools/clang/lib/Driver/ToolChains/Clang.h 83 void AddClangCLArgs(const llvm::opt::ArgList &Args, types::ID InputType,
tools/clang/lib/Driver/ToolChains/Darwin.cpp 739 types::ID MachO::LookupTypeForExtension(StringRef Ext) const {
740 types::ID Ty = types::lookupTypeForExtension(Ext);
856 types::ID InputType) const {
tools/clang/lib/Driver/ToolChains/Darwin.h 209 types::ID LookupTypeForExtension(StringRef Ext) const override;
309 types::ID InputType) const override;
tools/clang/lib/Driver/ToolChains/Fuchsia.cpp 225 types::ID InputType) const {
tools/clang/lib/Driver/ToolChains/Fuchsia.h 67 types::ID InputType) const override;
tools/clang/lib/Driver/ToolChains/MSVC.cpp 1339 types::ID InputType) const {
tools/clang/lib/Driver/ToolChains/MSVC.h 137 types::ID InputType) const override;
tools/clang/lib/Driver/ToolChains/NaCl.cpp 354 types::ID InputType) const {
tools/clang/lib/Driver/ToolChains/NaCl.h 74 types::ID InputType) const override;
tools/clang/lib/Driver/Types.cpp 26 ID PreprocessedType;
43 const char *types::getTypeName(ID Id) {
47 types::ID types::getPreprocessedType(ID Id) {
47 types::ID types::getPreprocessedType(ID Id) {
48 ID PPT = getInfo(Id).PreprocessedType;
55 static bool isPrepeocessedModuleType(ID Id) {
59 types::ID types::getPrecompiledType(ID Id) {
59 types::ID types::getPrecompiledType(ID Id) {
67 const char *types::getTypeTempSuffix(ID Id, bool CLMode) {
84 bool types::onlyAssembleType(ID Id) {
90 bool types::onlyPrecompileType(ID Id) {
95 bool types::canTypeBeUserSpecified(ID Id) {
96 static const clang::driver::types::ID kStaticLangageTypes[] = {
107 bool types::appendSuffixForType(ID Id) {
112 bool types::canLipoType(ID Id) {
119 bool types::isAcceptedByClang(ID Id) {
147 bool types::isObjC(ID Id) {
160 bool types::isCXX(ID Id) {
178 bool types::isLLVMIR(ID Id) {
191 bool types::isCuda(ID Id) {
203 bool types::isHIP(ID Id) {
215 bool types::isSrcFile(ID Id) {
219 types::ID types::lookupTypeForExtension(llvm::StringRef Ext) {
281 types::ID types::lookupTypeForTypeSpecifier(const char *Name) {
283 types::ID Id = (types::ID) (i + 1);
295 void types::getCompilationPhases(ID Id, llvm::SmallVectorImpl<phases::ID> &P) {
302 llvm::opt::DerivedArgList &DAL, ID Id,
366 ID types::lookupCXXTypeForCType(ID Id) {
366 ID types::lookupCXXTypeForCType(ID Id) {
382 ID types::lookupHeaderTypeForSourceType(ID Id) {
382 ID types::lookupHeaderTypeForSourceType(ID Id) {
tools/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp 92 types::ID guessType(StringRef Filename, bool *Certain = nullptr) {
94 auto Lang =
103 static types::ID foldType(types::ID Lang) {
103 static types::ID foldType(types::ID Lang) {
127 Optional<types::ID> Type;
207 auto TargetType = guessType(Filename, &TypeCertain);
252 static types::ID toType(Language Lang) {
268 static StringRef toCLFlag(types::ID Type) {
282 Optional<types::ID> tryParseTypeArg(const llvm::opt::Arg &Arg) {
348 types::ID PreferLanguage) const {
416 types::ID PreferredLanguage) const {
494 std::vector<types::ID> Types;
513 auto Lang = guessType(Filename, &TypeCertain);
tools/clang/tools/clang-import-test/clang-import-test.cpp 175 ID Id = lookupTypeForTypeSpecifier(Input.c_str());
tools/clang/tools/extra/clangd/QueryDriverDatabase.cpp 230 auto Type = driver::types::lookupTypeForExtension(Ext);
tools/clang/tools/extra/clangd/index/Background.cpp 209 auto Type =
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() { }
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 { };
136 inline _GLIBCXX17_CONSTEXPR _Tp*
137 addressof(_Tp& __r) noexcept
143 const _Tp* addressof(const _Tp&&) = delete;
143 const _Tp* addressof(const _Tp&&) = delete;
usr/include/c++/7.4.0/bits/stl_algo.h 3900 const _Tp& __val)
usr/include/c++/7.4.0/bits/stl_algobase.h 356 static _Tp*
357 __copy_m(const _Tp* __first, const _Tp* __last, _Tp* __result)
357 __copy_m(const _Tp* __first, const _Tp* __last, _Tp* __result)
357 __copy_m(const _Tp* __first, const _Tp* __last, _Tp* __result)
361 is_move_assignable<_Tp>,
362 is_copy_assignable<_Tp>>;
368 __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
usr/include/c++/7.4.0/bits/stl_construct.h 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>;
291 constexpr pair(const pair<_U1, _U2>& __p)
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)) { }
360 constexpr pair(pair<_U1, _U2>&& __p)
361 : first(std::forward<_U1>(__p.first)),
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)
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*
962 emplace_back(_Args&&... __args);
1483 _M_realloc_insert(iterator __position, _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;
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(); }
140 destroy(_Up* __p) { __p->~_Up(); }
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
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
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
762 typename add_rvalue_reference<_Tp>::type declval() noexcept;
777 : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
777 : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
825 : public __is_destructible_safe<_Tp>::type
889 typedef decltype(__test<_Tp>(0)) type;
894 : public __and_<__not_<is_void<_Tp>>,
895 __is_default_constructible_impl<_Tp>>
915 : public __is_default_constructible_atom<_Tp>::type
921 : public __is_default_constructible_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>
1352 : public is_nothrow_assignable<_Tp&, _Tp&&>
1352 : public is_nothrow_assignable<_Tp&, _Tp&&>
1358 : public __is_nt_move_assignable_impl<_Tp>
1377 static void __helper(const _Tp&);
1380 static true_type __test(const _Tp&,
1381 decltype(__helper<const _Tp&>({}))* = 0);
1390 typedef decltype(__test(declval<_Tp>())) type;
1395 : public __is_implicitly_default_constructible_impl<_Tp>::type
1400 : public __and_<is_default_constructible<_Tp>,
1401 __is_implicitly_default_constructible_safe<_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; };
1664 : public __add_rvalue_reference_helper<_Tp>
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;