- (define (get-defs name)
- ;; Get all context definition symbols matching the given context
- ;; name. Maybe this should be done in C++, or use
- ;; ly:output-description (at some cost in consing).
- (let ((defs '()))
- (if (eq? name 'Bottom)
- (module-for-each
- (lambda (sym var)
- (let ((cdef (variable-ref var)))
- (if (and (ly:context-def? cdef)
- (null? (ly:context-def-lookup cdef 'accepts)))
- (set! defs (cons sym defs)))))
- (ly:output-def-scope output-def))
- (module-for-each
- (lambda (sym var)
- (let ((cdef (variable-ref var)))
- (if (and (ly:context-def? cdef)
- (or (eq? name (ly:context-def-lookup cdef 'context-name))
- (memq name (ly:context-def-lookup cdef 'aliases))))
- (set! defs (cons sym defs)))))
- (ly:output-def-scope output-def)))
- defs))