diff options
Diffstat (limited to 'source/Symbol/CompilerType.cpp')
-rw-r--r-- | source/Symbol/CompilerType.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/source/Symbol/CompilerType.cpp b/source/Symbol/CompilerType.cpp index 000a949626c5..2b06c93c3f0d 100644 --- a/source/Symbol/CompilerType.cpp +++ b/source/Symbol/CompilerType.cpp @@ -177,7 +177,14 @@ CompilerType::IsFunctionPointerType () const if (IsValid()) return m_type_system->IsFunctionPointerType(m_type); return false; +} +bool +CompilerType::IsBlockPointerType (CompilerType *function_pointer_type_ptr) const +{ + if (IsValid()) + return m_type_system->IsBlockPointerType(m_type, function_pointer_type_ptr); + return 0; } bool @@ -189,6 +196,20 @@ CompilerType::IsIntegerType (bool &is_signed) const } bool +CompilerType::IsEnumerationType (bool &is_signed) const +{ + if (IsValid()) + return m_type_system->IsEnumerationType(m_type, is_signed); + return false; +} + +bool +CompilerType::IsIntegerOrEnumerationType (bool &is_signed) const +{ + return IsIntegerType(is_signed) || IsEnumerationType(is_signed); +} + +bool CompilerType::IsPointerType (CompilerType *pointee_type) const { if (IsValid()) |