Fix the unintelligible IsValidClassName API by breaking it into three.

There are only three of the four possibilities you actually want, so we may as
well just call them by name.

Change-Id: I481d91d98d6d47430f1972891fa81a61c57ad331
diff --git a/src/utils.h b/src/utils.h
index bb307d1..f747ae8 100644
--- a/src/utils.h
+++ b/src/utils.h
@@ -190,14 +190,10 @@
 // Turn "Ljava/lang/String;" into "java.lang.String".
 std::string DescriptorToDot(const std::string& descriptor);
 
-// Tests whether 's' is a valid class name.
-// name_or_descriptor
-//     true  => "java/lang/String"
-//     false => "Ljava/lang/String;" (i.e. "descriptor")
-// dot_or_slash
-//     true  => "java.lang.String"
-//     false => "java/lang/String" (i.e. "dot or slash")
-bool IsValidClassName(const char* s, bool name_or_descriptor, bool dot_or_slash);
+// Tests for whether 's' is a valid class name in the three common forms:
+bool IsValidBinaryClassName(const char* s);  // "java.lang.String"
+bool IsValidJniClassName(const char* s);     // "java/lang/String"
+bool IsValidDescriptor(const char* s);       // "Ljava/lang/String;"
 
 // Returns the JNI native function name for the non-overloaded method 'm'.
 std::string JniShortName(const Method* m);