]> git.donarmstrong.com Git - lilypond.git/commitdiff
Reinitialize all-event-classes and all-grob-descriptions after session
authorDavid Kastrup <dak@gnu.org>
Thu, 4 Jul 2013 17:51:14 +0000 (19:51 +0200)
committerDavid Kastrup <dak@gnu.org>
Fri, 12 Jul 2013 07:41:56 +0000 (09:41 +0200)
scm/define-event-classes.scm
scm/define-grobs.scm

index 05d8542b003272b9df481b0f9435da0fddec4b34..84f8a147984e8fdbc13a032fd248a5522df615fe 100644 (file)
         '() event-classes))
 
 ;; Maps event-class to a list of ancestors (inclusive)
-(define-public ancestor-lookup
-  (let ((h (make-hash-table (length all-event-classes))))
-    (for-each (lambda (ent) (hashq-set! h (car ent) ent))
-              all-event-classes)
-    h))
+(define ancestor-lookup (make-hash-table (length all-event-classes)))
 
+(define (ancestor-lookup-initialize)
+  (hash-clear! ancestor-lookup)
+  (for-each (lambda (ent) (hashq-set! ancestor-lookup (car ent) ent))
+            all-event-classes))
+
+(ancestor-lookup-initialize)
+(call-after-session ancestor-lookup-initialize)
 
 ;; Each class will be defined as
 ;; (class parent grandparent .. )
index ee71f903c71ff164acb85566e84b5512398c7bff..e2b9e6acd71ae30503899413a3b3c923fd45b478 100644 (file)
@@ -25,7 +25,7 @@
 ;; TODO: junk the meta field in favor of something more compact?
 
 
-(define-public all-grob-descriptions
+(define-session-public all-grob-descriptions
   `(
     (Accidental
      . (