https://codereview.appspot.com/576090043/diff/557790043/lily/multi-measure-rest.cc
File lily/multi-measure-rest.cc (right):

https://codereview.appspot.com/576090043/diff/557790043/lily/multi-measure-rest.cc#newcode268
lily/multi-measure-rest.cc:268: bool oneline = (!staff) ||
Staff_symbol::line_positions (staff).size() == 1;
On 2020/05/07 12:18:48, Dan Eble wrote:
> If there is no staff symbol, then there isn't even one line. Are you
sure you
> don't want this?
>     bool oneline = staff ? /*etc.*/ : false;

No, I actually want oneline to be true . I did consider changing the
variable name to no_multiple_lines, because that’s what it’s really
about. I also considered adding a comment such as:
// If there is no StaffSymbol, print MMrests on one (invisible) line.

> Incidentally, I am surprised to see the amount of work involved in
determining
> whether the staff has one line.  It's not the kind of thing one
expects to
> involve heap allocation.

I suspect this sort-of mirrors the way you’d do it in Scheme:
(if (> (length
        (ly:grob-property
         (ly:grob-object grob 'staff-symbol)
        'line-positions))
      0)
 etc.

If you have a simpler syntax in mind, please share :-)

Cheers,
-- V.

https://codereview.appspot.com/576090043/

Reply via email to