docs: public static void findClassLoaderOrder(final ClassLoader classRealm, final ClassLoaderOrder classLoaderOrder) {
          // From ClassRealm#loadClassFromImport(String) -> getImportClassLoader(String)
          final Object foreignImports = ReflectionUtils.getFieldVal(classRealm, "foreignImports", false);
          if (foreignImports != null) {
              @SuppressWarnings("unchecked")
              final SortedSet<Object> foreignImportEntries = (SortedSet<Object>) foreignImports;
              for (final Object entry : foreignImportEntries) {
                  final ClassLoader foreignImportClassLoader = (ClassLoader) ReflectionUtils.invokeMethod(entry,
                          "getClassLoader", false);
                  // Treat foreign import classloader as if it is a parent classloader
                  classLoaderOrder.delegateTo(foreignImportClassLoader, /* isParent = */ true);
              }
          }
  
          // Get delegation order -- different strategies have different delegation orders
          final boolean isParentFirst = isParentFirstStrategy(classRealm);
  
          // From ClassRealm#loadClassFromSelf(String) -> findLoadedClass(String) for self-first strategy
          if (!isParentFirst) {
              // Add self before parent
              classLoaderOrder.add(classRealm);
          }
  
          // From ClassRealm#loadClassFromParent -- N.B. we are ignoring parentImports, which is used to filter
          // a class name before deciding whether or not to call the parent classloader (so ClassGraph will be
          // able to load classes by name that are not imported from the parent classloader).
          final ClassLoader parentClassLoader = (ClassLoader) ReflectionUtils.invokeMethod(classRealm,
                  "getParentClassLoader", false);
          classLoaderOrder.delegateTo(parentClassLoader, /* isParent = */ true);
          classLoaderOrder.delegateTo(classRealm.getParent(), /* isParent = */ true);
  
          // From ClassRealm#loadClassFromSelf(String) -> findLoadedClass(String) for parent-first strategy
          if (isParentFirst) {
              // Add self after parent
              classLoaderOrder.add(classRealm);
          }
      }