Sha256: 262b7eb53a1a2f18de943edd2d7f22fe70d34780dd2f05364add4707789d5a3b
Contents?: true
Size: 729 Bytes
Versions: 2
Compression:
Stored size: 729 Bytes
Contents
# frozen_string_literal: true # Module for rulesets module HeadMusic::Style::Rulesets; end # Rules for first species harmony class HeadMusic::Style::Rulesets::FirstSpeciesHarmony RULESET = [ HeadMusic::Style::Annotations::ApproachPerfectionContrarily, HeadMusic::Style::Annotations::AvoidCrossingVoices, HeadMusic::Style::Annotations::AvoidOverlappingVoices, HeadMusic::Style::Annotations::ConsonantDownbeats, HeadMusic::Style::Annotations::NoUnisonsInMiddle, HeadMusic::Style::Annotations::OneToOne, HeadMusic::Style::Annotations::PreferContraryMotion, HeadMusic::Style::Annotations::PreferImperfect, ].freeze def self.analyze(voice) RULESET.map { |rule| rule.new(voice) } end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
head_music-0.19.0 | lib/head_music/style/rulesets/first_species_harmony.rb |
head_music-0.18.0 | lib/head_music/style/rulesets/first_species_harmony.rb |