OLD | NEW |
1 /* | 1 /* |
2 This file is part of LilyPond, the GNU music typesetter. | 2 This file is part of LilyPond, the GNU music typesetter. |
3 | 3 |
4 Copyright (C) 2005--2020 Han-Wen Nienhuys <hanwen@xs4all.nl> | 4 Copyright (C) 2005--2020 Han-Wen Nienhuys <hanwen@xs4all.nl> |
5 | 5 |
6 LilyPond is free software: you can redistribute it and/or modify | 6 LilyPond is free software: you can redistribute it and/or modify |
7 it under the terms of the GNU General Public License as published by | 7 it under the terms of the GNU General Public License as published by |
8 the Free Software Foundation, either version 3 of the License, or | 8 the Free Software Foundation, either version 3 of the License, or |
9 (at your option) any later version. | 9 (at your option) any later version. |
10 | 10 |
11 LilyPond is distributed in the hope that it will be useful, | 11 LilyPond is distributed in the hope that it will be useful, |
12 but WITHOUT ANY WARRANTY; without even the implied warranty of | 12 but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
14 GNU General Public License for more details. | 14 GNU General Public License for more details. |
15 | 15 |
16 You should have received a copy of the GNU General Public License | 16 You should have received a copy of the GNU General Public License |
17 along with LilyPond. If not, see <http://www.gnu.org/licenses/>. | 17 along with LilyPond. If not, see <http://www.gnu.org/licenses/>. |
18 */ | 18 */ |
19 | 19 |
20 #include "translator-dispatch-list.hh" | 20 #include "translator-dispatch-list.hh" |
21 #include "engraver.hh" | 21 #include "engraver.hh" |
22 | 22 |
23 | |
24 void | 23 void |
25 Engraver_dispatch_list::apply (Grob_info gi) | 24 Engraver_dispatch_list::apply (Grob_info gi) |
26 { | 25 { |
27 SCM origin = gi.origin_translator ()->self_scm (); | 26 SCM origin = gi.origin_translator ()->self_scm (); |
28 SCM grob = gi.grob ()->self_scm (); | 27 SCM grob = gi.grob ()->self_scm (); |
29 for (vsize i = 0; i < dispatch_entries_.size (); i++) | 28 for (vsize i = 0; i < dispatch_entries_.size (); i++) |
30 { | 29 { |
31 Method_instance const &e (dispatch_entries_[i]); | 30 Method_instance const &e (dispatch_entries_[i]); |
32 if (scm_is_eq (e.instance (), origin)) | 31 if (scm_is_eq (e.instance (), origin)) |
33 continue; | 32 continue; |
(...skipping 20 matching lines...) Expand all Loading... |
54 { | 53 { |
55 SCM ptr = eng->get_acknowledger (scm_car (i), start_end); | 54 SCM ptr = eng->get_acknowledger (scm_car (i), start_end); |
56 | 55 |
57 if (!SCM_UNBNDP (ptr)) | 56 if (!SCM_UNBNDP (ptr)) |
58 list->dispatch_entries_.push_back (Method_instance (ptr, eng)); | 57 list->dispatch_entries_.push_back (Method_instance (ptr, eng)); |
59 } | 58 } |
60 } | 59 } |
61 | 60 |
62 return list->dispatch_entries_.empty () ? SCM_EOL : retval; | 61 return list->dispatch_entries_.empty () ? SCM_EOL : retval; |
63 } | 62 } |
OLD | NEW |