X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fgroup-interface.cc;h=4b4fd9c4b1c1260da6349e4b019de466859a793d;hb=1a4e4afd05f01d8b8a872eec876ce49b0639c015;hp=092170d6068d24b0b98673a61028d27e97902b95;hpb=38d60c0c4e8c29beccd4acfd07aadf1cdea74097;p=lilypond.git diff --git a/lily/group-interface.cc b/lily/group-interface.cc index 092170d606..4b4fd9c4b1 100644 --- a/lily/group-interface.cc +++ b/lily/group-interface.cc @@ -3,43 +3,19 @@ source file of the GNU LilyPond music typesetter - (c) 1999--2001 Han-Wen Nienhuys + (c) 1999--2002 Han-Wen Nienhuys */ #include "group-interface.hh" #include "grob.hh" - -/* - This special add_thing routine is slightly more efficient than - - set_prop (name,cons (thing, get_prop (name))) - - since it can reuse the handle returned by scm_assq(). -*/ - void Group_interface::add_thing (Grob*me, SCM sym, SCM thing) { - SCM handle = scm_sloppy_assq (sym, me->mutable_property_alist_); - if (handle != SCM_BOOL_F) - { - gh_set_cdr_x (handle, gh_cons (thing, gh_cdr (handle))); - - } - else - { - /* - There is no mutable prop yet, so create an entry, and put it in front of the - mutable prop list. - */ - handle = scm_sloppy_assq (sym, me->immutable_property_alist_); - SCM tail = (handle != SCM_BOOL_F) ? gh_cdr(handle) : SCM_EOL; - me->mutable_property_alist_ = gh_cons (gh_cons (sym, gh_cons (thing, tail)), - me->mutable_property_alist_); - } + me->add_to_list_property (sym, thing); } + void Group_interface::add_thing (Grob*me, String name, SCM thing) {