|
From: | Auto mailings of changes to Lily Issues |
Subject: | [Lilypond-auto] [LilyIssues-auto] [testlilyissues:issues] #4842 Bring Scheme_engraver in line with other translators. |
Date: | Wed, 04 May 2016 21:13:27 +0000 |
Diff:
[issues:#4842] Bring Scheme_engraver in line with other translators.
Status: Started
Created: Tue May 03, 2016 09:25 PM UTC by David Kastrup
Last Updated: Tue May 03, 2016 09:32 PM UTC
Owner: David Kastrup
Bring Scheme_engraver in line with other translators.
A whole load of commits. First uploads will be for issue 4840 and
4841 which are not in master yet.
Commits in reverse order:
Don't special-case Scheme_engraver's methods
Don't special-case Scheme_engraver's acknowledgers
Store acknowledgers in a Scheme_hash_table
Replace Translator_method et al
All of Translator_method, Translator_group_method,
Translator_group_void_method, Callback can be expressed via SCM now.
Translator_method_binding is replaced with Method_instance.
Replace Engraver_dispatch_entry with Method_instance
This also replaces a lot of C++-centric callback machinery (like the
Grob_info_callback type) with SCM-based code.
Add Method_instance class
This is a lightweight container class combining an SCM method call
with a particular instance into a C++ callable.
Add Callback0_wrapper and Callback2_wrapper class
Those are for callbacks with 0 and 2 SCM arguments, respectively. The
former are needed mainly for translator callbacks, the second for
acknowledgers.
Issue 4841: Let Scheme_hash_table::get return SCM_UNDEFINED for unknown keys
Issue 4840: Make Translator/Performer/Engraver abstract base classes
It does not make sense for them to be instantiable.
http://codereview.appspot.com/297170043
Sent from sourceforge.net because address@hidden is subscribed to https://sourceforge.net/p/testlilyissues/issues/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/testlilyissues/admin/issues/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.
------------------------------------------------------------------------------ Find and fix application performance issues faster with Applications Manager Applications Manager provides deep performance insights into multiple tiers of your business applications. It resolves application problems quickly and reduces your MTTR. Get your free trial! https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
_______________________________________________ Testlilyissues-auto mailing list address@hidden https://lists.sourceforge.net/lists/listinfo/testlilyissues-auto
[Prev in Thread] | Current Thread | [Next in Thread] |