forked from OSchip/llvm-project
[AST] Clean up NamedDecl::getUnderlyingDecl() change a bit.
llvm-svn: 152332
This commit is contained in:
parent
eb72532098
commit
47c32287d9
|
@ -106,6 +106,9 @@ class NamedDecl : public Decl {
|
||||||
/// constructor, Objective-C selector, etc.)
|
/// constructor, Objective-C selector, etc.)
|
||||||
DeclarationName Name;
|
DeclarationName Name;
|
||||||
|
|
||||||
|
private:
|
||||||
|
NamedDecl *getUnderlyingDeclImpl();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
NamedDecl(Kind DK, DeclContext *DC, SourceLocation L, DeclarationName N)
|
NamedDecl(Kind DK, DeclContext *DC, SourceLocation L, DeclarationName N)
|
||||||
: Decl(DK, DC, L), Name(N) { }
|
: Decl(DK, DC, L), Name(N) { }
|
||||||
|
@ -324,12 +327,13 @@ public:
|
||||||
/// \brief Looks through UsingDecls and ObjCCompatibleAliasDecls for
|
/// \brief Looks through UsingDecls and ObjCCompatibleAliasDecls for
|
||||||
/// the underlying named decl.
|
/// the underlying named decl.
|
||||||
NamedDecl *getUnderlyingDecl() {
|
NamedDecl *getUnderlyingDecl() {
|
||||||
if (!(this->getKind() == UsingShadow) &&
|
// Fast-path the common case.
|
||||||
!(this->getKind() == ObjCCompatibleAlias))
|
if (this->getKind() != UsingShadow &&
|
||||||
|
this->getKind() != ObjCCompatibleAlias)
|
||||||
return this;
|
return this;
|
||||||
|
|
||||||
return getUnderlyingDeclImpl();
|
return getUnderlyingDeclImpl();
|
||||||
}
|
}
|
||||||
NamedDecl *getUnderlyingDeclImpl();
|
|
||||||
const NamedDecl *getUnderlyingDecl() const {
|
const NamedDecl *getUnderlyingDecl() const {
|
||||||
return const_cast<NamedDecl*>(this)->getUnderlyingDecl();
|
return const_cast<NamedDecl*>(this)->getUnderlyingDecl();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue