fn substitute_all(
    custom_properties_map: &mut ComputedCustomProperties,
    deferred_properties_map: Option<&mut ComputedCustomProperties>,
    invalid_non_custom_properties: &mut LonghandIdSet,
    seen: &PrecomputedHashSet<&Name>,
    references_from_non_custom_properties: &NonCustomReferenceMap<Vec<Name>>,
    stylist: &Stylist,
    computed_context: &Context<'_>
)
Expand description

Resolve all custom properties to either substituted, invalid, or unset (meaning we should use the inherited value).

It does cycle dependencies removal at the same time as substitution.