-SCM
-find_accept_translators (SCM gravlist, SCM ifaces)
-{
- SCM l = SCM_EOL;
- for (SCM s = gravlist; ly_pair_p (s); s = ly_cdr (s))
- {
- Translator* tr = unsmob_translator (ly_car (s));
- if (translator_accepts_any_of (tr, ifaces))
- l = scm_cons (tr->self_scm (), l);
- }
- l = scm_reverse_x (l, SCM_EOL);
-
- 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 (get_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