[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Issue 4572: Remove the number of arguments from callback macros (issue 2
From: |
nine . fierce . ballads |
Subject: |
Issue 4572: Remove the number of arguments from callback macros (issue 262980043 by address@hidden) |
Date: |
Fri, 21 Aug 2015 20:11:18 +0000 |
Reviewers: ,
Description:
The compiler is capable of counting the number of arguments in a
callback. It can also check that the number of optional arguments does
not exceed the total number of arguments.
I've put the code that accomplishes these things in
lily-guile-macros.hh, but it is generic enough that it might make more
sense to create a new file for it. Suggestions are welcome.
Changes in lily-guile-macros.hh are manual. Everything else is
automated with this script:
for FILE in $(git grep -l '^MAKE_[_A-Z]*SCHEME_CALLBACK[_A-Z]* ' lily)
do
sed -i 's/\(MAKE_[_A-Z]*SCHEME_CALLBACK[_A-Z]*\) *(\([^,]*\),
*\([^,]*\), *\([^,)]*\)/\1 (\2, \3/' $FILE
done
Please review this at https://codereview.appspot.com/262980043/
Affected files (+312, -278 lines):
M lily/accidental.cc
M lily/accidental-placement.cc
M lily/align-interface.cc
M lily/arpeggio.cc
M lily/axis-group-interface.cc
M lily/balloon.cc
M lily/beam.cc
M lily/break-alignment-interface.cc
M lily/breathing-sign.cc
M lily/chord-name.cc
M lily/clef.cc
M lily/clef-modifier.cc
M lily/cluster.cc
M lily/custos.cc
M lily/dot-column.cc
M lily/dots.cc
M lily/duration-scheme.cc
M lily/enclosing-bracket.cc
M lily/figured-bass-continuation.cc
M lily/fingering-column.cc
M lily/flag.cc
M lily/grace-music.cc
M lily/grid-line-interface.cc
M lily/grob.cc
M lily/hairpin.cc
M lily/hara-kiri-group-spanner.cc
M lily/horizontal-bracket.cc
M lily/include/lily-guile-macros.hh
M lily/key-signature-interface.cc
M lily/kievan-ligature.cc
M lily/ledger-line-spanner.cc
M lily/line-spanner.cc
M lily/lyric-combine-music.cc
M lily/lyric-extender.cc
M lily/lyric-hyphen.cc
M lily/measure-grouping-spanner.cc
M lily/melody-spanner.cc
M lily/mensural-ligature.cc
M lily/multi-measure-rest.cc
M lily/music.cc
M lily/music-sequence.cc
M lily/music-wrapper.cc
M lily/note-collision.cc
M lily/note-head.cc
M lily/ottava-bracket.cc
M lily/paper-column.cc
M lily/partial-iterator.cc
M lily/percent-repeat-item.cc
M lily/piano-pedal-bracket.cc
M lily/pitch.cc
M lily/property-iterator.cc
M lily/pure-from-neighbor-interface.cc
M lily/relative-octave-check.cc
M lily/relative-octave-music.cc
M lily/repeated-music.cc
M lily/rest.cc
M lily/rest-collision.cc
M lily/script-column.cc
M lily/script-interface.cc
M lily/self-alignment-interface.cc
M lily/semi-tie.cc
M lily/semi-tie-column.cc
M lily/separation-item.cc
M lily/side-position-interface.cc
M lily/skyline.cc
M lily/skyline-pair.cc
M lily/slur.cc
M lily/slur-scoring.cc
M lily/spacing-spanner.cc
M lily/spanner.cc
M lily/staff-symbol.cc
M lily/staff-symbol-referencer.cc
M lily/stem.cc
M lily/stem-tremolo.cc
M lily/stencil-integral.cc
M lily/stream-event.cc
M lily/sustain-pedal.cc
M lily/system.cc
M lily/system-start-delimiter.cc
M lily/text-interface.cc
M lily/tie.cc
M lily/tie-column.cc
M lily/tuplet-bracket.cc
M lily/tuplet-number.cc
M lily/vaticana-ligature.cc
M lily/volta-bracket.cc
- Issue 4572: Remove the number of arguments from callback macros (issue 262980043 by address@hidden),
nine . fierce . ballads <=