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

Declarations

gen/tools/clang/include/clang/AST/DeclNodes.inc
  303 TYPEALIAS(TypeAlias, TypedefNameDecl)
tools/clang/include/clang/Sema/Sema.h
  185   class TypeAliasDecl;

References

include/llvm/ADT/STLExtras.h
   75       typename std::add_pointer<typename std::add_const<T>::type>::type;
include/llvm/Support/Casting.h
   57   static inline bool doit(const From &Val) {
   58     return To::classof(&Val);
  104   static inline bool doit(const From *Val) {
  106     return isa_impl<To, From>::doit(*Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  142   return isa_impl_wrap<X, const Y,
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  265   return cast_convert_val<X, Y*,
  266                           typename simplify_type<Y*>::SimpleType>::doit(Val);
  305 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
  309   return cast<X>(Val);
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
tools/clang/include/clang/AST/ASTNodeTraverser.h
  457   void VisitTypeAliasDecl(const TypeAliasDecl *D) {
tools/clang/include/clang/AST/ASTTypeTraits.h
   65     return ASTNodeKind(KindToKindId<T>::Id);
   65     return ASTNodeKind(KindToKindId<T>::Id);
   65     return ASTNodeKind(KindToKindId<T>::Id);
  234   static DynTypedNode create(const T &Node) {
  235     return BaseConverter<T>::create(Node);
  251   const T *get() const {
  252     return BaseConverter<T>::get(NodeKind, Storage.buffer);
  259   const T &getUnchecked() const {
  260     return BaseConverter<T>::getUnchecked(NodeKind, Storage.buffer);
  394     static const T *get(ASTNodeKind NodeKind, const char Storage[]) {
  395       if (ASTNodeKind::getFromNodeKind<T>().isBaseOf(NodeKind))
  399     static const T &getUnchecked(ASTNodeKind NodeKind, const char Storage[]) {
  401       return *cast<T>(static_cast<const BaseT *>(
  469     : public DynCastPtrConverter<T, Decl> {};
tools/clang/include/clang/AST/Decl.h
 3124   static TypeAliasDecl *Create(ASTContext &C, DeclContext *DC,
 3127   static TypeAliasDecl *CreateDeserialized(ASTContext &C, unsigned ID);
tools/clang/include/clang/AST/DeclBase.h
 2536   static ::clang::DeclContext *doit(const FromTy *Val) {
 2537     return FromTy::castToDeclContext(Val);
tools/clang/include/clang/AST/DeclTemplate.h
 2362   TypeAliasDecl *getTemplatedDecl() const {
tools/clang/include/clang/AST/JSONNodeDumper.h
  225   void VisitTypeAliasDecl(const TypeAliasDecl *TAD);
tools/clang/include/clang/AST/RecursiveASTVisitor.h
 1796   TRY_TO(TraverseTypeLoc(D->getTypeSourceInfo()->getTypeLoc()));
tools/clang/include/clang/AST/TextNodeDumper.h
  318   void VisitTypeAliasDecl(const TypeAliasDecl *D);
tools/clang/include/clang/ASTMatchers/ASTMatchers.h
  110   const T *getNodeAs(StringRef ID) const {
  111     return MyBoundNodes.getNodeAs<T>(ID);
  209 extern const internal::VariadicDynCastAllOfMatcher<Decl, TypeAliasDecl>
tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h
  160   const T *getNodeAs(StringRef ID) const {
  165     return It->second.get<T>();
  302   virtual bool matches(const T &Node,
  309     return matches(DynNode.getUnchecked<T>(), Finder, Builder);
  345   DynTypedMatcher(MatcherInterface<T> *Implementation)
  346       : SupportedKind(ast_type_traits::ASTNodeKind::getFromNodeKind<T>()),
  436     return canConvertTo(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
  445   template <typename T> Matcher<T> convertTo() const {
  447     return unconditionalConvertTo<T>();
  479 class WrapperMatcherInterface : public MatcherInterface<T> {
  499   explicit Matcher(MatcherInterface<T> *Implementation)
  507           typename std::enable_if<std::is_base_of<From, T>::value &&
  508                                !std::is_same<From, T>::value>::type * = nullptr)
  520             std::is_same<T, QualType>::value &&
  529     static_assert(std::is_base_of<To, T>::value, "Invalid dynCast call.");
  534   bool matches(const T &Node,
  581     return Other.dynCastTo(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
 1026   bool matchesAncestorOf(const T &Node,
 1030     static_assert(std::is_base_of<Decl, T>::value ||
 1031                       std::is_base_of<NestedNameSpecifierLoc, T>::value ||
 1032                       std::is_base_of<Stmt, T>::value ||
 1033                       std::is_base_of<TypeLoc, T>::value,
 1084       std::is_base_of<typename AnyTypeList::head, T>::value ||
 1085       TypeListContainsSuperOf<typename AnyTypeList::tail, T>::value;
 1146     template <typename To> operator Matcher<To>() const {
 1202   operator Matcher<T>() const {
 1203     static_assert(TypeListContainsSuperOf<ReturnTypes, T>::value,
 1243   operator Matcher<T>() const {
 1245                ast_type_traits::ASTNodeKind::getFromNodeKind<T>())
 1246         .template unconditionalConvertTo<T>();
 1255 class BindableMatcher : public Matcher<T> {
 1257   explicit BindableMatcher(const Matcher<T> &M) : Matcher<T>(M) {}
 1258   explicit BindableMatcher(MatcherInterface<T> *Implementation)
 1265   Matcher<T> bind(StringRef ID) const {
 1335   template <typename T> operator Matcher<T>() const {
 1337                Op, ast_type_traits::ASTNodeKind::getFromNodeKind<T>(),
 1338                getMatchers<T>(std::index_sequence_for<Ps...>()))
 1339         .template unconditionalConvertTo<T>();
 1370 inline Matcher<T> DynTypedMatcher::unconditionalConvertTo() const {
 1376 BindableMatcher<T> makeAllOfComposite(
 1377     ArrayRef<const Matcher<T> *> InnerMatchers) {
 1388   using PI = llvm::pointee_iterator<const Matcher<T> *const *>;
 1395           ast_type_traits::ASTNodeKind::getFromNodeKind<T>(),
 1397           .template unconditionalConvertTo<T>());
 1408     ArrayRef<const Matcher<InnerT> *> InnerMatchers) {
 1438 class HasParentMatcher : public WrapperMatcherInterface<T> {
 1446   bool matches(const T &Node, ASTMatchFinder *Finder,
 1557     : public VariadicFunction<BindableMatcher<SourceT>, Matcher<TargetT>,
 1558                               makeDynCastAllOfComposite<SourceT, TargetT>> {
tools/clang/include/clang/ASTMatchers/Dynamic/VariantValue.h
  199   ast_matchers::internal::Matcher<T> getTypedMatcher() const {
  202         ->template convertTo<T>();
  227       : MatcherOps(ast_type_traits::ASTNodeKind::getFromNodeKind<T>()) {}
  228   typedef ast_matchers::internal::Matcher<T> MatcherT;
  232     return DynTypedMatcher(Matcher.convertTo<T>());
tools/clang/lib/AST/ASTImporter.cpp
  162     Expected<T *> import(T *From) {
  162     Expected<T *> import(T *From) {
  166       return cast_or_null<T>(*ToOrErr);
  170     Expected<T *> import(const T *From) {
  170     Expected<T *> import(const T *From) {
  217           -> decltype(ToDeclT::Create(std::forward<Args>(args)...)) {
  218         return ToDeclT::Create(std::forward<Args>(args)...);
  229     LLVM_NODISCARD bool GetImportedOrCreateDecl(ToDeclT *&ToD, FromDeclT *FromD,
  247       CallOverloadedCreateFun<NewDeclT> OC;
  458     ExpectedDecl VisitTypeAliasDecl(TypeAliasDecl *D);
 2361     if (GetImportedOrCreateDecl<TypeAliasDecl>(
 2374   TypeAliasDecl *FromAlias = IsAlias ? cast<TypeAliasDecl>(D) : nullptr;
 2374   TypeAliasDecl *FromAlias = IsAlias ? cast<TypeAliasDecl>(D) : nullptr;
 2385 ExpectedDecl ASTNodeImporter::VisitTypeAliasDecl(TypeAliasDecl *D) {
 2427   TypeAliasDecl *ToTemplatedDecl;
tools/clang/lib/AST/Comment.cpp
  330             : cast<TypeAliasDecl>(CommentDecl)->getTypeSourceInfo();
  347     TypeAliasDecl *TAD = TAT->getTemplatedDecl();
tools/clang/lib/AST/Decl.cpp
 4772 TypeAliasDecl *TypeAliasDecl::Create(ASTContext &C, DeclContext *DC,
 4776   return new (C, DC) TypeAliasDecl(C, DC, StartLoc, IdLoc, Id, TInfo);
 4779 TypeAliasDecl *TypeAliasDecl::CreateDeserialized(ASTContext &C, unsigned ID) {
 4780   return new (C, ID) TypeAliasDecl(C, nullptr, SourceLocation(),
tools/clang/lib/AST/DeclBase.cpp
  237   else if (auto *AD = dyn_cast<TypeAliasDecl>(this))
tools/clang/lib/AST/DeclPrinter.cpp
   63     void VisitTypeAliasDecl(TypeAliasDecl *D);
  512 void DeclPrinter::VisitTypeAliasDecl(TypeAliasDecl *D) {
tools/clang/lib/AST/JSONNodeDumper.cpp
  700 void JSONNodeDumper::VisitTypeAliasDecl(const TypeAliasDecl *TAD) {
tools/clang/lib/AST/MicrosoftMangle.cpp
 1540     } else if (isa<TypeAliasDecl>(ND)) {
tools/clang/lib/AST/ODRHash.cpp
  359   void VisitTypeAliasDecl(const TypeAliasDecl *D) {
  360     Inherited::VisitTypeAliasDecl(D);
tools/clang/lib/AST/TextNodeDumper.cpp
 1513 void TextNodeDumper::VisitTypeAliasDecl(const TypeAliasDecl *D) {
tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp
  557 const internal::VariadicDynCastAllOfMatcher<Decl, TypeAliasDecl> typeAliasDecl;
tools/clang/lib/ASTMatchers/Dynamic/Marshallers.h
   75     return Value.isMatcher() && Value.getMatcher().hasTypedMatcher<T>();
   78   static ast_matchers::internal::Matcher<T> get(const VariantValue &Value) {
   79     return Value.getMatcher().getTypedMatcher<T>();
   83     return ArgKind(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
  466       ast_matchers::internal::VariadicDynCastAllOfMatcher<BaseT, DerivedT> Func,
  469         DerivedKind(ast_type_traits::ASTNodeKind::getFromNodeKind<DerivedT>()) {
  778     ast_matchers::internal::VariadicDynCastAllOfMatcher<BaseT, DerivedT>
tools/clang/lib/CodeGen/CGDebugInfo.cpp
 1115   auto *AliasDecl =
tools/clang/lib/Sema/Sema.cpp
  859         << isa<TypeAliasDecl>(TD) << TD->getDeclName();
tools/clang/lib/Sema/SemaDecl.cpp
 2178     int Kind = isa<TypeAliasDecl>(Old) ? 1 : 0;
 2191     int Kind = isa<TypeAliasDecl>(Old) ? 1 : 0;
 7187   if (isa<TypeAliasDecl>(ShadowedDecl))
14479   else if (isa<TypeAliasDecl>(PrevDecl))
15371         if (isa<TypeAliasDecl>(PrevDecl)) Kind = 1;
tools/clang/lib/Sema/SemaDeclCXX.cpp
 8792       << DeclaratorType << isa<TypeAliasDecl>(TT->getDecl());
11004   TypeAliasDecl *NewTD = TypeAliasDecl::Create(Context, CurContext, UsingLoc,
11004   TypeAliasDecl *NewTD = TypeAliasDecl::Create(Context, CurContext, UsingLoc,
11065         TypeAliasDecl *OldTD = OldDecl->getTemplatedDecl();
tools/clang/lib/Sema/SemaTemplate.cpp
 3239     TypeAliasDecl *Pattern = AliasTemplate->getTemplatedDecl();
tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
  742     Typedef = TypeAliasDecl::Create(SemaRef.Context, Owner, D->getBeginLoc(),
  792 Decl *TemplateDeclInstantiator::VisitTypeAliasDecl(TypeAliasDecl *D) {
  810   TypeAliasDecl *Pattern = D->getTemplatedDecl();
  820   TypeAliasDecl *AliasInst = cast_or_null<TypeAliasDecl>(
  820   TypeAliasDecl *AliasInst = cast_or_null<TypeAliasDecl>(
tools/clang/lib/Serialization/ASTReaderDecl.cpp
  334     void VisitTypeAliasDecl(TypeAliasDecl *TD);
  692 void ASTDeclReader::VisitTypeAliasDecl(TypeAliasDecl *TD) {
 2484   if (auto *DAlias = dyn_cast<TypeAliasDecl>(DPattern))
 2484   if (auto *DAlias = dyn_cast<TypeAliasDecl>(DPattern))
 3652     D = TypeAliasDecl::CreateDeserialized(Context, ID);
tools/clang/lib/Serialization/ASTWriterDecl.cpp
   69     void VisitTypeAliasDecl(TypeAliasDecl *D);
  397 void ASTDeclWriter::VisitTypeAliasDecl(TypeAliasDecl *D) {
tools/clang/tools/extra/clang-move/Move.cpp
  197     else if (const auto *TAD =
  198                  Result.Nodes.getNodeAs<TypeAliasDecl>("type_alias")) {
tools/clang/tools/extra/clang-tidy/readability/IdentifierNamingCheck.cpp
  407   if (isa<TypeAliasDecl>(D) && NamingStyles[SK_TypeAlias])
tools/clang/tools/libclang/CIndex.cpp
  687 bool CursorVisitor::VisitTypeAliasDecl(TypeAliasDecl *D) {
tools/clang/tools/libclang/CursorVisitor.h
  198   bool VisitTypeAliasDecl(TypeAliasDecl *D);
tools/clang/unittests/AST/ASTImporterTest.cpp
 1377       if (auto *AD = dyn_cast<TypeAliasDecl>(Child)) {
 1377       if (auto *AD = dyn_cast<TypeAliasDecl>(Child)) {
 4547   auto *Alias = FirstDeclMatcher<TypeAliasDecl>().match(
tools/clang/unittests/AST/DeclMatcher.h
   22   NodeType *Node = nullptr;
   26       Node = const_cast<NodeType *>(Result.Nodes.getNodeAs<NodeType>(""));
   32   NodeType *match(const Decl *D, const MatcherType &AMatcher) {
usr/include/c++/7.4.0/type_traits
  215     : public __is_void_helper<typename remove_cv<_Tp>::type>::type
  581     : public __or_<is_lvalue_reference<_Tp>,
  582                    is_rvalue_reference<_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
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
  638     : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
 1554     { typedef _Tp     type; };
 1558     { typedef _Tp     type; };
 1563     { typedef _Tp     type; };
 1574       remove_const<typename remove_volatile<_Tp>::type>::type     type;
 1580     { typedef _Tp const     type; };
 1629     { typedef _Tp   type; };
 1983     { typedef _Up     type; };
 1999     { typedef typename remove_reference<_Tp>::type*     type; };
 2003     : public __add_pointer_helper<_Tp>