fn dependency_order(
    attributes: HashSet<Box<dyn Attribute>>
) -> Vec<Box<dyn Attribute>>
Expand description

Consumes a set of attributes and produces a topologically sorted version of the elements in that set based on the dependency information provided by the Attribute::requires results.

We use Kahn’s algorithm1 to sort the input.