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

References

include/llvm/Support/YAMLTraits.h
  313   using Signature_enumeration = void (*)(class IO&, T&);
  322     (sizeof(test<ScalarEnumerationTraits<T>>(nullptr)) == 1);
  329   using Signature_bitset = void (*)(class IO&, T&);
  337   static bool const value = (sizeof(test<ScalarBitSetTraits<T>>(nullptr)) == 1);
  344   using Signature_input = StringRef (*)(StringRef, void*, T&);
  345   using Signature_output = void (*)(const T&, void*, raw_ostream&);
  357       (sizeof(test<ScalarTraits<T>>(nullptr, nullptr, nullptr)) == 1);
  364   using Signature_input = StringRef (*)(StringRef, void *, T &);
  365   using Signature_output = void (*)(const T &, void *, raw_ostream &);
  375       (sizeof(test<BlockScalarTraits<T>>(nullptr, nullptr)) == 1);
  380   using Signature_input = StringRef (*)(StringRef, StringRef, void *, T &);
  381   using Signature_output = void (*)(const T &, void *, raw_ostream &,
  383   using Signature_mustQuote = QuotingType (*)(const T &, StringRef);
  393       (sizeof(test<TaggedScalarTraits<T>>(nullptr, nullptr, nullptr)) == 1);
  412   using Signature_mapping = void (*)(class IO &, T &);
  419   static bool const value = (sizeof(test<MappingTraits<T>>(nullptr)) == 1);
  438   using Signature_validate = StringRef (*)(class IO &, T &);
  445   static bool const value = (sizeof(test<MappingTraits<T>>(nullptr)) == 1);
  452   using Signature_size = size_t (*)(class IO&, T&);
  460   static bool const value =  (sizeof(test<SequenceTraits<T>>(nullptr)) == 1);
  467   using Signature_input = void (*)(IO &io, StringRef key, T &v);
  476       (sizeof(test<CustomMappingTraits<T>>(nullptr)) == 1);
  516   using Signature_size = size_t (*)(class IO &, T &);
  524   static bool const value = (sizeof(test<DocumentListTraits<T>>(nullptr))==1);
  528   using Signature_getKind = NodeKind (*)(const T &);
  535   static bool const value = (sizeof(test<PolymorphicTraits<T>>(nullptr)) == 1);
  957 void doMapping(IO &io, T &Val, Context &Ctx) {
  961 template <typename T> void doMapping(IO &io, T &Val, EmptyContext &Ctx) {
  962   MappingTraits<T>::mapping(io, Val);
 1078 typename std::enable_if<unvalidatedMappingTraits<T, Context>::value, void>::type
 1079 yamlize(IO &io, T &Val, bool, Context &Ctx) {
 1080   if (has_FlowTraits<MappingTraits<T>>::value) {
 1904     : SequenceTraitsImpl<std::vector<T>, SequenceElementTraits<T>::flow> {};
tools/clang/tools/extra/clang-doc/BitcodeReader.cpp
  277                         CommentInfo *I) {
  328 template <typename T> llvm::Expected<CommentInfo *> getCommentInfo(T I) {
  333 template <> llvm::Expected<CommentInfo *> getCommentInfo(FunctionInfo *I) {
  338 template <> llvm::Expected<CommentInfo *> getCommentInfo(NamespaceInfo *I) {
  343 template <> llvm::Expected<CommentInfo *> getCommentInfo(RecordInfo *I) {
  348 template <> llvm::Expected<CommentInfo *> getCommentInfo(EnumInfo *I) {
  353 template <> llvm::Expected<CommentInfo *> getCommentInfo(CommentInfo *I) {
  353 template <> llvm::Expected<CommentInfo *> getCommentInfo(CommentInfo *I) {
  354   I->Children.emplace_back(std::make_unique<CommentInfo>());
  359 llvm::Expected<CommentInfo *> getCommentInfo(std::unique_ptr<CommentInfo> &I) {
  359 llvm::Expected<CommentInfo *> getCommentInfo(std::unique_ptr<CommentInfo> &I) {
tools/clang/tools/extra/clang-doc/BitcodeWriter.cpp
  431 void ClangDocBitcodeWriter::emitBlock(const CommentInfo &I) {
  460   for (const auto &CI : I.Description)
  478   for (const auto &CI : I.Description)
  496   for (const auto &CI : I.Description)
  541   for (const auto &CI : I.Description)
tools/clang/tools/extra/clang-doc/BitcodeWriter.h
  160   void emitBlock(const CommentInfo &B);
tools/clang/tools/extra/clang-doc/HTMLGenerator.cpp
  600 static std::unique_ptr<HTMLNode> genHTML(const CommentInfo &I) {
  627 static std::unique_ptr<TagNode> genHTML(const std::vector<CommentInfo> &C) {
  629   for (const auto &Child : C) {
tools/clang/tools/extra/clang-doc/MDGenerator.cpp
   59 static void writeDescription(const CommentInfo &I, raw_ostream &OS) {
  123   for (const auto &C : I.Description)
  150   for (const auto &C : I.Description)
  162     for (const auto &C : I.Description)
  199     for (const auto &C : I.Description)
tools/clang/tools/extra/clang-doc/Representation.h
   48   CommentInfo(CommentInfo &Other) = delete;
   49   CommentInfo(CommentInfo &&Other) = default;
   50   CommentInfo &operator=(CommentInfo &&Other) = default;
   50   CommentInfo &operator=(CommentInfo &&Other) = default;
   52   bool operator==(const CommentInfo &Other) const {
   71   bool operator<(const CommentInfo &Other) const {
  111   std::vector<std::unique_ptr<CommentInfo>>
  256   std::vector<CommentInfo> Description; // Comment description of this decl.
tools/clang/tools/extra/clang-doc/Serialize.cpp
   66   ClangDocCommentVisitor(CommentInfo &CI) : CurrentCI(CI) {}
   85   CommentInfo &CurrentCI;
   93     CurrentCI.Children.emplace_back(std::make_unique<CommentInfo>());
  205 static void parseFullComment(const FullComment *C, CommentInfo &CI) {
tools/clang/tools/extra/clang-doc/YAMLGenerator.cpp
  141 static void CommentInfoMapping(IO &IO, CommentInfo &I) {
  248   static void mapping(IO &IO, CommentInfo &I) { CommentInfoMapping(IO, I); }
  252   static void mapping(IO &IO, std::unique_ptr<CommentInfo> &I) {
tools/clang/tools/extra/unittests/clang-doc/BitcodeTest.cpp
  169   CommentInfo Top;
  172   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  173   CommentInfo *BlankLine = Top.Children.back().get();
  175   BlankLine->Children.emplace_back(std::make_unique<CommentInfo>());
  178   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  179   CommentInfo *Brief = Top.Children.back().get();
  181   Brief->Children.emplace_back(std::make_unique<CommentInfo>());
  186   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  187   CommentInfo *Extended = Top.Children.back().get();
  189   Extended->Children.emplace_back(std::make_unique<CommentInfo>());
  192   Extended->Children.emplace_back(std::make_unique<CommentInfo>());
  196   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  197   CommentInfo *HTML = Top.Children.back().get();
  199   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  201   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  206   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  209   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  212   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  217   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  218   CommentInfo *Verbatim = Top.Children.back().get();
  222   Verbatim->Children.emplace_back(std::make_unique<CommentInfo>());
  226   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  227   CommentInfo *ParamOut = Top.Children.back().get();
  232   ParamOut->Children.emplace_back(std::make_unique<CommentInfo>());
  235       std::make_unique<CommentInfo>());
  238       std::make_unique<CommentInfo>());
  242   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  243   CommentInfo *ParamIn = Top.Children.back().get();
  247   ParamIn->Children.emplace_back(std::make_unique<CommentInfo>());
  250       std::make_unique<CommentInfo>());
  254       std::make_unique<CommentInfo>());
  257   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  258   CommentInfo *Return = Top.Children.back().get();
  262   Return->Children.emplace_back(std::make_unique<CommentInfo>());
  265       std::make_unique<CommentInfo>());
tools/clang/tools/extra/unittests/clang-doc/ClangDocTest.cpp
   37 void CheckCommentInfo(CommentInfo &Expected, CommentInfo &Actual) {
   37 void CheckCommentInfo(CommentInfo &Expected, CommentInfo &Actual) {
tools/clang/tools/extra/unittests/clang-doc/HTMLGeneratorTest.cpp
  378   CommentInfo Top;
  381   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  382   CommentInfo *BlankLine = Top.Children.back().get();
  384   BlankLine->Children.emplace_back(std::make_unique<CommentInfo>());
  387   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  388   CommentInfo *Brief = Top.Children.back().get();
  390   Brief->Children.emplace_back(std::make_unique<CommentInfo>());
  395   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  396   CommentInfo *Extended = Top.Children.back().get();
  398   Extended->Children.emplace_back(std::make_unique<CommentInfo>());
  401   Extended->Children.emplace_back(std::make_unique<CommentInfo>());
  405   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  406   CommentInfo *Entities = Top.Children.back().get();
  408   Entities->Children.emplace_back(std::make_unique<CommentInfo>());
tools/clang/tools/extra/unittests/clang-doc/MDGeneratorTest.cpp
  221   CommentInfo Top;
  224   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  225   CommentInfo *BlankLine = Top.Children.back().get();
  227   BlankLine->Children.emplace_back(std::make_unique<CommentInfo>());
  230   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  231   CommentInfo *Brief = Top.Children.back().get();
  233   Brief->Children.emplace_back(std::make_unique<CommentInfo>());
  238   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  239   CommentInfo *Extended = Top.Children.back().get();
  241   Extended->Children.emplace_back(std::make_unique<CommentInfo>());
  244   Extended->Children.emplace_back(std::make_unique<CommentInfo>());
  248   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  249   CommentInfo *HTML = Top.Children.back().get();
  251   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  253   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  258   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  261   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  264   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  269   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  270   CommentInfo *Verbatim = Top.Children.back().get();
  274   Verbatim->Children.emplace_back(std::make_unique<CommentInfo>());
  278   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  279   CommentInfo *ParamOut = Top.Children.back().get();
  284   ParamOut->Children.emplace_back(std::make_unique<CommentInfo>());
  287       std::make_unique<CommentInfo>());
  290       std::make_unique<CommentInfo>());
  294   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  295   CommentInfo *ParamIn = Top.Children.back().get();
  299   ParamIn->Children.emplace_back(std::make_unique<CommentInfo>());
  302       std::make_unique<CommentInfo>());
  306       std::make_unique<CommentInfo>());
  309   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  310   CommentInfo *Return = Top.Children.back().get();
  314   Return->Children.emplace_back(std::make_unique<CommentInfo>());
  317       std::make_unique<CommentInfo>());
tools/clang/tools/extra/unittests/clang-doc/MergeTest.cpp
  167   auto OneParagraphComment = std::make_unique<CommentInfo>();
  169   auto OneTextComment = std::make_unique<CommentInfo>();
  187   auto TwoParagraphComment = std::make_unique<CommentInfo>();
  189   auto TwoTextComment = std::make_unique<CommentInfo>();
  214   auto ExpectedParagraphComment = std::make_unique<CommentInfo>();
  216   auto ExpectedTextComment = std::make_unique<CommentInfo>();
tools/clang/tools/extra/unittests/clang-doc/YAMLGeneratorTest.cpp
  275   CommentInfo Top;
  278   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  279   CommentInfo *BlankLine = Top.Children.back().get();
  281   BlankLine->Children.emplace_back(std::make_unique<CommentInfo>());
  284   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  285   CommentInfo *Brief = Top.Children.back().get();
  287   Brief->Children.emplace_back(std::make_unique<CommentInfo>());
  292   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  293   CommentInfo *Extended = Top.Children.back().get();
  295   Extended->Children.emplace_back(std::make_unique<CommentInfo>());
  298   Extended->Children.emplace_back(std::make_unique<CommentInfo>());
  302   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  303   CommentInfo *HTML = Top.Children.back().get();
  305   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  307   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  312   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  315   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  318   HTML->Children.emplace_back(std::make_unique<CommentInfo>());
  323   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  324   CommentInfo *Verbatim = Top.Children.back().get();
  328   Verbatim->Children.emplace_back(std::make_unique<CommentInfo>());
  332   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  333   CommentInfo *ParamOut = Top.Children.back().get();
  338   ParamOut->Children.emplace_back(std::make_unique<CommentInfo>());
  341       std::make_unique<CommentInfo>());
  344       std::make_unique<CommentInfo>());
  348   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  349   CommentInfo *ParamIn = Top.Children.back().get();
  353   ParamIn->Children.emplace_back(std::make_unique<CommentInfo>());
  356       std::make_unique<CommentInfo>());
  360       std::make_unique<CommentInfo>());
  363   Top.Children.emplace_back(std::make_unique<CommentInfo>());
  364   CommentInfo *Return = Top.Children.back().get();
  368   Return->Children.emplace_back(std::make_unique<CommentInfo>());
  371       std::make_unique<CommentInfo>());
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 { };
  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/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_function.h
  417 	operator()(_Tp&& __t, _Up&& __u) const
  417 	operator()(_Tp&& __t, _Up&& __u) const
  462 	operator()(_Tp&& __t, _Up&& __u) const
  462 	operator()(_Tp&& __t, _Up&& __u) const
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_uninitialized.h
  288 			   _ForwardIterator __result, allocator<_Tp>&)
  644 				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
  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(); }
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/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
  594     : public __or_<is_arithmetic<_Tp>, is_void<_Tp>,
  594     : public __or_<is_arithmetic<_Tp>, is_void<_Tp>,
  595 		   is_null_pointer<_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>
 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; };
 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