Type findType(String signature) throws ClassNotLoadedException {
   List<ReferenceType> types = visibleClasses();
   Iterator<ReferenceType> iter = types.iterator();
   while (iter.hasNext()) {
     ReferenceType type = iter.next();
     if (type.signature().equals(signature)) {
       return type;
     }
   }
   JNITypeParser parser = new JNITypeParser(signature);
   throw new ClassNotLoadedException(
       parser.typeName(), "Class " + parser.typeName() + " not loaded");
 }
 /** @return a text representation of the declared type of this variable. */
 public String typeName() {
   JNITypeParser parser = new JNITypeParser(signature);
   return parser.typeName();
 }