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

References

include/llvm/ADT/DenseMap.h
   45   ValueT &getSecond() { return std::pair<KeyT, ValueT>::second; }
   46   const ValueT &getSecond() const { return std::pair<KeyT, ValueT>::second; }
   66   using mapped_type = ValueT;
  185   ValueT lookup(const_arg_type_t<KeyT> Val) const {
  299   ValueT &operator[](const KeyT &Key) {
  311   ValueT &operator[](KeyT &&Key) {
  380         ::new (&DestBucket->getSecond()) ValueT(std::move(B->getSecond()));
  520     ::new (&TheBucket->getSecond()) ValueT(std::forward<ValueArgs>(Values)...);
 1031           ::new (&TmpEnd->getSecond()) ValueT(std::move(P->getSecond()));
include/llvm/ADT/Optional.h
  144     T value;
  160   explicit OptionalStorage(in_place_t, Args &&... args)
  172   T &getValue() LLVM_LVALUE_FUNCTION noexcept {
  176   T const &getValue() const LLVM_LVALUE_FUNCTION noexcept {
  181   T &&getValue() && noexcept {
  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) && {
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/AST/Decl.h
  404   LinkageInfo getLinkageAndVisibility() const;
tools/clang/include/clang/AST/Type.h
 2356   LinkageInfo getLinkageAndVisibility() const;
tools/clang/include/clang/Basic/Visibility.h
   67   static LinkageInfo external() {
   70   static LinkageInfo internal() {
   73   static LinkageInfo uniqueExternal() {
   76   static LinkageInfo none() {
   79   static LinkageInfo visible_none() {
   92   void mergeLinkage(LinkageInfo other) {
  106   void mergeExternalVisibility(LinkageInfo Other) {
  127   void mergeVisibility(LinkageInfo other) {
  132   void merge(LinkageInfo other) {
  138   void mergeMaybeWithVisibility(LinkageInfo other, bool withVis) {
tools/clang/lib/AST/Decl.cpp
  238 LinkageInfo LinkageComputer::getLVForType(const Type &T,
  248 LinkageInfo LinkageComputer::getLVForTemplateParameterList(
  250   LinkageInfo LV;
  317 LinkageInfo
  320   LinkageInfo LV;
  361 LinkageInfo
  387     LinkageInfo &LV, const FunctionDecl *fn,
  395   LinkageInfo tempLV =
  401   LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation);
  455     LinkageInfo &LV, const ClassTemplateSpecializationDecl *spec,
  463   LinkageInfo tempLV =
  472   LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation);
  506 void LinkageComputer::mergeTemplateLV(LinkageInfo &LV,
  515   LinkageInfo tempLV =
  524   LinkageInfo argsLV = getLVForTemplateArgumentList(templateArgs, computation);
  590 static LinkageInfo getInternalLinkageFor(const NamedDecl *D) {
  598   return LinkageInfo::internal();
  601 static LinkageInfo getExternalLinkageFor(const NamedDecl *D) {
  610   return LinkageInfo::external();
  625 LinkageInfo
  708   LinkageInfo LV = getExternalLinkageFor(D);
  784       LinkageInfo TypeLV = getLVForType(*Var->getType(), computation);
  786         return LinkageInfo::uniqueExternal();
  830         return LinkageInfo::uniqueExternal();
  850       return LinkageInfo::none();
  862     LinkageInfo EnumLV = getLVForDecl(cast<NamedDecl>(D->getDeclContext()),
  865       return LinkageInfo::none();
  871     LinkageInfo tempLV =
  892       return LinkageInfo::none();
  896     return LinkageInfo::none();
  907 LinkageInfo
  927     return LinkageInfo::none();
  929   LinkageInfo LV;
  951   LinkageInfo classLV =
  973       return LinkageInfo::uniqueExternal();
 1012       LinkageInfo typeLV = getLVForType(*VD->getType(), computation);
 1030     LinkageInfo tempLV =
 1093 LinkageInfo NamedDecl::getLinkageAndVisibility() const {
 1181 LinkageInfo LinkageComputer::getLVForClosure(const DeclContext *DC,
 1195     return LinkageInfo::none();
 1202   LinkageInfo OwnerLV =
 1210     return LinkageInfo::none();
 1215 LinkageInfo LinkageComputer::getLVForLocalDecl(const NamedDecl *D,
 1226     LinkageInfo LV;
 1245       LinkageInfo LV;
 1254         LinkageInfo PrevLV = getLVForDecl(Prev, computation);
 1264       return LinkageInfo::none();
 1269     return LinkageInfo::none();
 1273     return LinkageInfo::none();
 1275   LinkageInfo LV;
 1278       return LinkageInfo::none();
 1286       return LinkageInfo::none();
 1311     return LinkageInfo::none();
 1329 LinkageInfo LinkageComputer::computeLVForDecl(const NamedDecl *D,
 1355       return LinkageInfo::none();
 1361       return LinkageInfo::visible_none();
 1369         return LinkageInfo::none();
 1449   return LinkageInfo::none();
 1453 LinkageInfo LinkageComputer::getLVForDecl(const NamedDecl *D,
 1462   if (llvm::Optional<LinkageInfo> LI = lookup(D, computation))
 1465   LinkageInfo LV = computeLVForDecl(D, computation);
 1499 LinkageInfo LinkageComputer::getDeclLinkageAndVisibility(const NamedDecl *D) {
tools/clang/lib/AST/Linkage.h
   93   llvm::Optional<LinkageInfo> lookup(const NamedDecl *ND,
  101   void cache(const NamedDecl *ND, LVComputationKind Kind, LinkageInfo Info) {
  105   LinkageInfo getLVForTemplateArgumentList(ArrayRef<TemplateArgument> Args,
  108   LinkageInfo getLVForTemplateArgumentList(const TemplateArgumentList &TArgs,
  111   void mergeTemplateLV(LinkageInfo &LV, const FunctionDecl *fn,
  115   void mergeTemplateLV(LinkageInfo &LV,
  119   void mergeTemplateLV(LinkageInfo &LV,
  123   LinkageInfo getLVForNamespaceScopeDecl(const NamedDecl *D,
  127   LinkageInfo getLVForClassMember(const NamedDecl *D,
  131   LinkageInfo getLVForClosure(const DeclContext *DC, Decl *ContextDecl,
  134   LinkageInfo getLVForLocalDecl(const NamedDecl *D,
  137   LinkageInfo getLVForType(const Type &T, LVComputationKind computation);
  139   LinkageInfo getLVForTemplateParameterList(const TemplateParameterList *Params,
  143   LinkageInfo computeLVForDecl(const NamedDecl *D,
  147   LinkageInfo getLVForDecl(const NamedDecl *D, LVComputationKind computation);
  149   LinkageInfo computeTypeLinkageInfo(const Type *T);
  150   LinkageInfo computeTypeLinkageInfo(QualType T) {
  154   LinkageInfo getDeclLinkageAndVisibility(const NamedDecl *D);
  156   LinkageInfo getTypeLinkageAndVisibility(const Type *T);
  157   LinkageInfo getTypeLinkageAndVisibility(QualType T) {
tools/clang/lib/AST/Type.cpp
 3724 LinkageInfo LinkageComputer::computeTypeLinkageInfo(const Type *T) {
 3737     return LinkageInfo::external();
 3740     return LinkageInfo::external();
 3744     return LinkageInfo::external();
 3761     LinkageInfo LV = computeTypeLinkageInfo(MPT->getClass());
 3776     LinkageInfo LV = computeTypeLinkageInfo(FPT->getReturnType());
 3807 LinkageInfo LinkageComputer::getTypeLinkageAndVisibility(const Type *T) {
 3811   LinkageInfo LV = computeTypeLinkageInfo(T);
 3816 LinkageInfo Type::getLinkageAndVisibility() const {
tools/clang/lib/CodeGen/CGVTables.cpp
 1009   LinkageInfo LV = RD->getLinkageAndVisibility();
 1044   LinkageInfo LV = RD->getLinkageAndVisibility();
tools/clang/lib/CodeGen/CodeGenModule.cpp
  769   LinkageInfo LV = D->getLinkageAndVisibility();
 1761   LinkageInfo LV = ND->getLinkageAndVisibility();
usr/include/c++/7.4.0/bits/move.h
   72     constexpr _Tp&&
   83     constexpr _Tp&&
   98     move(_Tp&& __t) noexcept
usr/include/c++/7.4.0/bits/stl_pair.h
  212       typedef _T2 second_type;   /// @c second_type is the second bound type
  215       _T2 second;                /// @c second is a copy of the second object
  311        constexpr pair(_U1&& __x, const _T2& __y)
  318        explicit constexpr pair(_U1&& __x, const _T2& __y)
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
  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>>>
  798       typedef decltype(__test<_Tp>(0)) type;
  811                remove_all_extents<_Tp>::type>::type
  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>
 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>
 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>>
 1554     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1633     { typedef _Tp   type; };
 1659     { typedef _Tp&&   type; };
 1664     : public __add_rvalue_reference_helper<_Tp>
 1955     { typedef _Tp     type; };