@Override
        public int compare(SortableType a, SortableType b) {
          if (a == b) {
            return 0;
          }
          if (b == null) {
            return -1;
          }
          if (a == null) {
            return 1;
          }
          if (a.depth != b.depth) {
            return a.depth - b.depth;
          }
          return a.getTypeIndex() - b.getTypeIndex();
        }
Name and structure of a type. Used to order types such that each type is preceded by its
supertype and implemented interfaces.
android/android_framework/dex-maker/src/main/java/com/android/dx/merge/SortableType.java