]> git.donarmstrong.com Git - lilypond.git/commit
Issue 4360: Reorganize smob initialization to make it more reliable
authorDavid Kastrup <dak@gnu.org>
Thu, 30 Apr 2015 18:48:09 +0000 (20:48 +0200)
committerDavid Kastrup <dak@gnu.org>
Sat, 2 May 2015 08:56:34 +0000 (10:56 +0200)
commit90d3233da87b372e02690978f89b2add3863fba6
treef23b62114ceffb3b5db566d140fcf7d446856ff6
parent2545fab01a601743bb3ecc18942cf14263ccfc6c
Issue 4360: Reorganize smob initialization to make it more reliable

This change is a nuisance in that it requires an explicit call to
ADD_SMOB_INIT for each Scheme-related class.

However, this setup guarantees that at the point Scheme execution
commences, all predicates of the likes of "ly:grob?" will be present.
It also guarantees that if a particular type should seem required during
_other_ initializations that happen to depend on the type and get
executed earlier, it will be provided early.
42 files changed:
lily/book.cc
lily/box.cc
lily/context-def.cc
lily/context-mod.cc
lily/context-property.cc
lily/context.cc
lily/dispatcher.cc
lily/duration.cc
lily/font-metric.cc
lily/grob-array.cc
lily/grob.cc
lily/include/smobs.hh
lily/include/smobs.tcc
lily/input-smob.cc
lily/lily-lexer.cc
lily/lily-parser.cc
lily/listener.cc
lily/moment.cc
lily/music-function.cc
lily/music-iterator.cc
lily/music-output.cc
lily/output-def.cc
lily/page-marker.cc
lily/paper-book.cc
lily/paper-outputter.cc
lily/pitch.cc
lily/prob.cc
lily/scale.cc
lily/scheme-listener.cc
lily/scm-hash.cc
lily/score.cc
lily/simple-closure.cc
lily/simple-spacer.cc
lily/skyline-pair.cc
lily/skyline.cc
lily/source-file.cc
lily/spring.cc
lily/stencil.cc
lily/translator-dispatch-list.cc
lily/translator-group.cc
lily/translator.cc
lily/undead.cc