@@ -1917,55 +1917,6 @@ const CXXRecordDecl *Type::getPointeeCXXRecordDecl() const {
19171917 return PointeeType->getAsCXXRecordDecl ();
19181918}
19191919
1920- CXXRecordDecl *Type::getAsCXXRecordDecl () const {
1921- const auto *TT = dyn_cast<TagType>(CanonicalType);
1922- if (!isa_and_present<RecordType, InjectedClassNameType>(TT))
1923- return nullptr ;
1924- auto *TD = TT->getOriginalDecl ();
1925- if (!isa<InjectedClassNameType>(TT) && !isa<CXXRecordDecl>(TD))
1926- return nullptr ;
1927- return cast<CXXRecordDecl>(TD)->getDefinitionOrSelf ();
1928- }
1929-
1930- CXXRecordDecl *Type::castAsCXXRecordDecl () const {
1931- const auto *TT = cast<TagType>(CanonicalType);
1932- return cast<CXXRecordDecl>(TT->getOriginalDecl ())->getDefinitionOrSelf ();
1933- }
1934-
1935- RecordDecl *Type::getAsRecordDecl () const {
1936- const auto *TT = dyn_cast<TagType>(CanonicalType);
1937- if (!isa_and_present<RecordType, InjectedClassNameType>(TT))
1938- return nullptr ;
1939- return cast<RecordDecl>(TT->getOriginalDecl ())->getDefinitionOrSelf ();
1940- }
1941-
1942- RecordDecl *Type::castAsRecordDecl () const {
1943- const auto *TT = cast<TagType>(CanonicalType);
1944- return cast<RecordDecl>(TT->getOriginalDecl ())->getDefinitionOrSelf ();
1945- }
1946-
1947- EnumDecl *Type::getAsEnumDecl () const {
1948- if (const auto *TT = dyn_cast<EnumType>(CanonicalType))
1949- return TT->getOriginalDecl ()->getDefinitionOrSelf ();
1950- return nullptr ;
1951- }
1952-
1953- EnumDecl *Type::castAsEnumDecl () const {
1954- return cast<EnumType>(CanonicalType)
1955- ->getOriginalDecl ()
1956- ->getDefinitionOrSelf ();
1957- }
1958-
1959- TagDecl *Type::getAsTagDecl () const {
1960- if (const auto *TT = dyn_cast<TagType>(CanonicalType))
1961- return TT->getOriginalDecl ()->getDefinitionOrSelf ();
1962- return nullptr ;
1963- }
1964-
1965- TagDecl *Type::castAsTagDecl () const {
1966- return cast<TagType>(CanonicalType)->getOriginalDecl ()->getDefinitionOrSelf ();
1967- }
1968-
19691920const TemplateSpecializationType *
19701921Type::getAsNonAliasTemplateSpecializationType () const {
19711922 const auto *TST = getAs<TemplateSpecializationType>();
0 commit comments