# frozen_string_literal: true # Module for style guidelines. module HeadMusic::Style::Guidelines; end # A counterpoint guideline class HeadMusic::Style::Guidelines::AlwaysMove < HeadMusic::Style::Annotation MESSAGE = 'Always move to a different note.' def marks melodic_intervals. select { |interval| interval.perfect? && interval.unison? }. map { |interval| HeadMusic::Style::Mark.for_all(interval.notes) } end end