From cb38fd644e8932f95bed24a98e32cc9e03e2c810 Mon Sep 17 00:00:00 2001 From: Jonas Devlieghere Date: Wed, 13 Jun 2018 18:15:14 +0000 Subject: [PATCH] [ObjC] Use llvm::StringRef in summary providers Replace const char pointers with llvm::StringRef and use its equality operator for string comparisons. llvm-svn: 334631 --- lldb/source/Plugins/Language/ObjC/Cocoa.cpp | 39 ++++++++++----------- 1 file changed, 19 insertions(+), 20 deletions(-) diff --git a/lldb/source/Plugins/Language/ObjC/Cocoa.cpp b/lldb/source/Plugins/Language/ObjC/Cocoa.cpp index d787d86bfeef..c185b814b7bf 100644 --- a/lldb/source/Plugins/Language/ObjC/Cocoa.cpp +++ b/lldb/source/Plugins/Language/ObjC/Cocoa.cpp @@ -67,12 +67,12 @@ bool lldb_private::formatters::NSBundleSummaryProvider( if (!valobj_addr) return false; - const char *class_name = descriptor->GetClassName().GetCString(); + llvm::StringRef class_name(descriptor->GetClassName().GetCString()); - if (!class_name || !*class_name) + if (class_name.empty()) return false; - if (!strcmp(class_name, "NSBundle")) { + if (class_name == "NSBundle") { uint64_t offset = 5 * ptr_size; ValueObjectSP text(valobj.GetSyntheticChildAtOffset( offset, @@ -117,12 +117,12 @@ bool lldb_private::formatters::NSTimeZoneSummaryProvider( if (!valobj_addr) return false; - const char *class_name = descriptor->GetClassName().GetCString(); + llvm::StringRef class_name(descriptor->GetClassName().GetCString()); - if (!class_name || !*class_name) + if (class_name.empty()) return false; - if (!strcmp(class_name, "__NSTimeZone")) { + if (class_name == "__NSTimeZone") { uint64_t offset = ptr_size; ValueObjectSP text(valobj.GetSyntheticChildAtOffset( offset, valobj.GetCompilerType(), true)); @@ -164,12 +164,12 @@ bool lldb_private::formatters::NSNotificationSummaryProvider( if (!valobj_addr) return false; - const char *class_name = descriptor->GetClassName().GetCString(); + llvm::StringRef class_name(descriptor->GetClassName().GetCString()); - if (!class_name || !*class_name) + if (class_name.empty()) return false; - if (!strcmp(class_name, "NSConcreteNotification")) { + if (class_name == "NSConcreteNotification") { uint64_t offset = ptr_size; ValueObjectSP text(valobj.GetSyntheticChildAtOffset( offset, valobj.GetCompilerType(), true)); @@ -211,14 +211,14 @@ bool lldb_private::formatters::NSMachPortSummaryProvider( if (!valobj_addr) return false; - const char *class_name = descriptor->GetClassName().GetCString(); + llvm::StringRef class_name(descriptor->GetClassName().GetCString()); - if (!class_name || !*class_name) + if (class_name.empty()) return false; uint64_t port_number = 0; - if (!strcmp(class_name, "NSMachPort")) { + if (class_name == "NSMachPort") { uint64_t offset = (ptr_size == 4 ? 12 : 20); Status error; port_number = process_sp->ReadUnsignedIntegerFromMemory( @@ -259,16 +259,15 @@ bool lldb_private::formatters::NSIndexSetSummaryProvider( if (!valobj_addr) return false; - const char *class_name = descriptor->GetClassName().GetCString(); + llvm::StringRef class_name(descriptor->GetClassName().GetCString()); - if (!class_name || !*class_name) + if (class_name.empty()) return false; uint64_t count = 0; do { - if (!strcmp(class_name, "NSIndexSet") || - !strcmp(class_name, "NSMutableIndexSet")) { + if (class_name == "NSIndexSet" || class_name == "NSMutableIndexSet") { Status error; uint32_t mode = process_sp->ReadUnsignedIntegerFromMemory( valobj_addr + ptr_size, 4, 0, error); @@ -451,15 +450,15 @@ bool lldb_private::formatters::NSNumberSummaryProvider( if (!valobj_addr) return false; - const char *class_name = descriptor->GetClassName().GetCString(); + llvm::StringRef class_name(descriptor->GetClassName().GetCString()); - if (!class_name || !*class_name) + if (class_name.empty()) return false; - if (!strcmp(class_name, "__NSCFBoolean")) + if (class_name == "__NSCFBoolean") return ObjCBooleanSummaryProvider(valobj, stream, options); - if (!strcmp(class_name, "NSNumber") || !strcmp(class_name, "__NSCFNumber")) { + if (class_name == "NSNumber" || class_name == "__NSCFNumber") { uint64_t value = 0; uint64_t i_bits = 0; if (descriptor->GetTaggedPointerInfo(&i_bits, &value)) {