code: public boolean isSameOrSubTypeOf(ClassDescriptorDef type, String baseType, boolean checkActualClasses) throws ClassNotFoundException
      {
          if (type.getQualifiedName().equals(baseType.replace('$', '.')))
          {
              return true;
          }
          else if (type.getOriginalClass() != null)
          {
              return isSameOrSubTypeOf(type.getOriginalClass(), baseType, checkActualClasses);
          }
          else
          {
              return checkActualClasses ? isSameOrSubTypeOf(type.getName(), baseType) : false;
          }
      }
docs: Determines whether the given type is the same or a sub type of the other type.
  
  @param type               The type
  @param baseType           The possible base type
  @param checkActualClasses Whether to use the actual classes for the test
  @return <code>true</code> If <code>type</code> specifies the same or a sub type of <code>baseType</code>
  @throws ClassNotFoundException If the two classes are not on the classpath