aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn McCall <rjmccall@apple.com>2010-10-06 00:23:35 +0000
committerJohn McCall <rjmccall@apple.com>2010-10-06 00:23:35 +0000
commit3ff83dd534ccc828203670ce3f5125a4eb4199f8 (patch)
treea30130346a1a623a534ba5623d2effed490b2f98
parentaca7f7bab0102341863a0d1bdb048d69213ae362 (diff)
Use a more conventional/efficient implementation for isEnumeralType()
and isBuiltinType(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115724 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/clang/AST/Type.h10
-rw-r--r--lib/AST/Type.cpp6
2 files changed, 6 insertions, 10 deletions
diff --git a/include/clang/AST/Type.h b/include/clang/AST/Type.h
index 9b32836a16..3cd60d3021 100644
--- a/include/clang/AST/Type.h
+++ b/include/clang/AST/Type.h
@@ -3541,9 +3541,15 @@ inline bool Type::isVariableArrayType() const {
inline bool Type::isDependentSizedArrayType() const {
return isa<DependentSizedArrayType>(CanonicalType);
}
+inline bool Type::isBuiltinType() const {
+ return isa<BuiltinType>(CanonicalType);
+}
inline bool Type::isRecordType() const {
return isa<RecordType>(CanonicalType);
}
+inline bool Type::isEnumeralType() const {
+ return isa<EnumType>(CanonicalType);
+}
inline bool Type::isAnyComplexType() const {
return isa<ComplexType>(CanonicalType);
}
@@ -3596,10 +3602,6 @@ inline bool Type::isTemplateTypeParmType() const {
return isa<TemplateTypeParmType>(CanonicalType);
}
-inline bool Type::isBuiltinType() const {
- return getAs<BuiltinType>();
-}
-
inline bool Type::isSpecificBuiltinType(unsigned K) const {
if (const BuiltinType *BT = getAs<BuiltinType>())
if (BT->getKind() == (BuiltinType::Kind) K)
diff --git a/lib/AST/Type.cpp b/lib/AST/Type.cpp
index 8e6aa23618..61390c8539 100644
--- a/lib/AST/Type.cpp
+++ b/lib/AST/Type.cpp
@@ -470,12 +470,6 @@ bool Type::isIntegralOrEnumerationType() const {
return false;
}
-bool Type::isEnumeralType() const {
- if (const TagType *TT = dyn_cast<TagType>(CanonicalType))
- return TT->getDecl()->isEnum();
- return false;
-}
-
bool Type::isBooleanType() const {
if (const BuiltinType *BT = dyn_cast<BuiltinType>(CanonicalType))
return BT->getKind() == BuiltinType::Bool;