WPLib::_flatten_array_dependency_order PHP Method

_flatten_array_dependency_order() private static method

Very specifically used for mustload classes. Uses recursion. Mustload classes are classes with an on_load() method.
private static _flatten_array_dependency_order ( string $parent_class, string $child_class, array &$mustload_classes, string[] &$ordered_classes ) : array
$parent_class string
$child_class string
$mustload_classes array
$ordered_classes string[]
return array
    private static function _flatten_array_dependency_order($parent_class, $child_class, &$mustload_classes, &$ordered_classes)
    {
        if (isset($mustload_classes[$parent_class])) {
            $child_class = $parent_class;
            $parent_class = $mustload_classes[$parent_class];
            self::_flatten_array_dependency_order($parent_class, $child_class, $mustload_classes, $ordered_classes);
        }
        if (!class_exists($parent_class, false)) {
            $ordered_classes[] = $parent_class;
        }
        $ordered_classes[] = $child_class;
        unset($mustload_classes[$child_class]);
    }