aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2009-10-21 22:55:51 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2009-10-21 22:55:51 +0000
commitf8ea2e28bb33ca29e0ff3af9de576ee6fb558b6e (patch)
treef85f1fbe04a8f421c683c1a1e90d5867f8c4b5bb
parentf7ce17e8a8feccbf3445d5364d80a8a291bee88b (diff)
Simplify code. No intended functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84790 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/VMCore/Metadata.cpp18
1 files changed, 6 insertions, 12 deletions
diff --git a/lib/VMCore/Metadata.cpp b/lib/VMCore/Metadata.cpp
index ce5cc7eed1..422a21545a 100644
--- a/lib/VMCore/Metadata.cpp
+++ b/lib/VMCore/Metadata.cpp
@@ -259,23 +259,17 @@ unsigned MetadataContext::registerMDKind(const StringRef Name) {
/// isValidName - Return true if Name is a valid custom metadata handler name.
bool MetadataContext::isValidName(const StringRef MDName) {
- const char *Name = MDName.data();
- if (!Name)
+ if (MDName.empty())
return false;
- if (!isalpha(*Name))
+ if (!isalpha(MDName[1]))
return false;
- unsigned Length = strlen(Name);
- unsigned Count = 1;
- ++Name;
- while (Name &&
- (isalnum(*Name) || *Name == '_' || *Name == '-' || *Name == '.')) {
- ++Name;
- ++Count;
+ for (StringRef::iterator I = MDName.begin() + 1, E = MDName.end(); I != E;
+ ++I) {
+ if (!isalnum(*I) && *I != '_' && *I != '-' && *I != '.')
+ return false;
}
- if (Length != Count)
- return false;
return true;
}