Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(2645)

Issue 6121050: Further deglobalize the event class hierarchy (part of issue 2449). (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years ago by dak
Modified:
11 years, 11 months ago
Reviewers:
CC:
lilypond-devel_gnu.org
Base URL:
http://git.savannah.gnu.org/gitweb/?p=lilypond.git/trunk/
Visibility:
Public.

Description

Further deglobalize the event class hierarchy (part of issue 2449). This is more a discussion basis than anything else: the most important change is likely making the "class" field in stream events contain the complete class (a list of event types) rather than just the basic event type symbol. The reason behind that is that the event class hierarchy is more or less a function of the current global context, and dispatchers are not really tied into contexts, so the respective context-relevant information is not easily accessible. So the event class hierarchy gets consulted when _creating_ the stream event. At the presented state of the code, the event class hierarchy _is_ still global. This is more or less juggling code around. One consequence is that it is becoming less realistic to interpret stream events written to file. After all, the set of event types is intended to become open-ended, and the reader of a file might not know about new types. Anyway, the current state are about three commits: Make detection of listened events a property of dispatchers instead of global Define and use event-class-cons Change class field in stream events to contain the complete event type list

Patch Set 1 #

Patch Set 2 : This disentangles the global/local mess of scheme-text-spanner.ly somewhat. #

Patch Set 3 : Documentation needs global context to reference event hierarchy. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+187 lines, -151 lines) Patch
M input/regression/scheme-text-spanner.ly View 1 3 chunks +26 lines, -8 lines 0 comments Download
M lily/context.cc View 1 4 chunks +12 lines, -1 line 0 comments Download
M lily/context-scheme.cc View 1 1 chunk +12 lines, -0 lines 0 comments Download
M lily/dispatcher.cc View 3 chunks +22 lines, -19 lines 0 comments Download
M lily/dispatcher-scheme.cc View 1 chunk +30 lines, -0 lines 0 comments Download
M lily/dynamic-engraver.cc View 1 chunk +1 line, -1 line 0 comments Download
M lily/engraver.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M lily/global-context.cc View 1 1 chunk +7 lines, -0 lines 0 comments Download
M lily/include/context.hh View 1 1 chunk +7 lines, -0 lines 0 comments Download
M lily/include/dispatcher.hh View 1 chunk +2 lines, -1 line 0 comments Download
M lily/include/music.hh View 1 2 chunks +2 lines, -1 line 0 comments Download
M lily/include/translator.icc View 1 chunk +2 lines, -2 lines 0 comments Download
M lily/music.cc View 1 4 chunks +5 lines, -4 lines 0 comments Download
M lily/new-dynamic-engraver.cc View 1 chunk +1 line, -1 line 0 comments Download
M lily/page-turn-engraver.cc View 1 chunk +1 line, -1 line 0 comments Download
M lily/paper-column-engraver.cc View 1 chunk +1 line, -1 line 0 comments Download
M lily/part-combine-engraver.cc View 1 chunk +1 line, -1 line 0 comments Download
M lily/part-combine-iterator.cc View 1 4 chunks +13 lines, -6 lines 0 comments Download
M lily/rhythmic-music-iterator.cc View 1 2 chunks +3 lines, -2 lines 0 comments Download
M lily/stream-event.cc View 1 chunk +0 lines, -1 line 0 comments Download
M lily/translator.cc View 2 chunks +4 lines, -34 lines 0 comments Download
M ly/engraver-init.ly View 1 1 chunk +1 line, -0 lines 0 comments Download
M ly/performer-init.ly View 1 1 chunk +1 line, -0 lines 0 comments Download
M scm/autochange.scm View 1 chunk +1 line, -1 line 0 comments Download
M scm/define-context-properties.scm View 1 1 chunk +1 line, -0 lines 0 comments Download
M scm/define-event-classes.scm View 1 3 chunks +18 lines, -55 lines 0 comments Download
M scm/document-music.scm View 1 2 3 chunks +4 lines, -2 lines 0 comments Download
M scm/output-lib.scm View 1 chunk +1 line, -1 line 0 comments Download
M scm/part-combiner.scm View 3 chunks +6 lines, -6 lines 0 comments Download
M scm/translation-functions.scm View 1 chunk +1 line, -1 line 0 comments Download

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b