-static void
-extend_spanner_over_elements (SCM value, SCM extremal_pair)
-{
- if (gh_pair_p (value))
- {
- extend_spanner_over_elements (ly_car (value), extremal_pair);
- extend_spanner_over_elements (ly_cdr (value), extremal_pair);
- }
- else if (unsmob_grob (value))
- {
- if (Spanner * sp = dynamic_cast<Spanner*> (unsmob_grob (value)))
- {
- extend_spanner_over_item (sp->get_bound (LEFT), extremal_pair);
- extend_spanner_over_item (sp->get_bound (RIGHT), extremal_pair);
- }
- else if (Item * it= dynamic_cast<Item*> (unsmob_grob (value)))
- extend_spanner_over_item (it, extremal_pair);
- }
-}
-
-
-/*
- Make sure that the left and right bounds encompasses all objects it
- points to.
-
- TODO: maybe be more specific. Most probably fucks up if someone sets
- a pointer to the staff symbol in S
-*/