- return l;
-}
-
-bool
-Translator_group::try_music_on_nongroup_children (Music *m )
-{
- SCM tab = get_property ("acceptHashTable");
- SCM name = scm_sloppy_assq (ly_symbol2scm ("name"),
- m->get_property_alist (false));
-
- if (!gh_pair_p (name))
- return false;
-
- name = gh_cdr (name);
- SCM accept_list = scm_hashq_ref (tab, name, SCM_UNDEFINED);
- if (accept_list == SCM_BOOL_F)
- {
- accept_list = find_accept_translators (simple_trans_list_,
- m->get_mus_property ("types"));
- scm_hashq_set_x (tab, name, accept_list);
- }
-
- for (SCM p = accept_list; gh_pair_p (p); p = ly_cdr (p))
- {
- Translator * t = unsmob_translator (ly_car (p));
- if (t && t->try_music (m))
- return true;
- }
- return false;
-}
-
-SCM
-Translator_group::properties_as_alist () const
-{
- return properties_dict()->to_alist();
-}
-
-String
-Translator_group::context_name () const
-{
- Translator_def * td = unsmob_translator_def (definition_ );
- return ly_symbol2string (td->get_context_name ());
-}
-
-/*
- PRE_INIT_OPS is in the order specified, and hence must be reversed.
- */
-void
-apply_property_operations (Translator_group*tg, SCM pre_init_ops)
-{
- SCM correct_order = scm_reverse (pre_init_ops);
- for (SCM s = correct_order; gh_pair_p (s); s = ly_cdr (s))
- {
- SCM entry = ly_car (s);
- SCM type = ly_car (entry);
- entry = ly_cdr (entry);
-
- if (type == ly_symbol2scm ("push") || type == ly_symbol2scm ("poppush"))
- {
- SCM val = ly_cddr (entry);
- val = gh_pair_p (val) ? ly_car (val) : SCM_UNDEFINED;
-
- tg->execute_pushpop_property (ly_car (entry), ly_cadr (entry), val);
- }
- else if (type == ly_symbol2scm ("assign"))
- {
- tg->internal_set_property (ly_car (entry), ly_cadr (entry));
- }
- }