class DefaultContractsGenerator implements ContractsGenerator {

  private static Vector getAllClass(ClassLoader classLoader) {
    Field classesField;
    try {
      classesField = ClassLoader.class.getDeclaredField("classes");
      classesField.setAccessible(true);

      if (classesField.get(classLoader) instanceof Vector) {
        return (Vector) classesField.get(classLoader);
      }
    } catch (Exception e) {
      throw new RuntimeException("Cannot get class from ClassLoader " + classLoader.getClass());
    }
    return new Vector<>();
  }

}