Sha256: 20cb440367998f06dd60ed5475025188ff378aee84784d380c8342607a0d9f92
Contents?: true
Size: 594 Bytes
Versions: 3
Compression:
Stored size: 594 Bytes
Contents
module Coltrane # It describe the quality of a chord, like maj7 or dim. class ChordQuality < IntervalSequence attr_reader :name include Qualities def initialize(name: nil, notes: nil) if !name.nil? if(intervals = CHORD_QUALITIES[name]) @name = name super(intervals: intervals) else raise ChordNotFoundError.new end elsif !notes.nil? super(notes: notes) @name = CHORD_QUALITIES.key(intervals_semitones) else raise WrongKeywords.new('[name:] || [notes:]') end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
coltrane-1.0.11 | lib/coltrane/chord_quality.rb |
coltrane-1.0.1 | lib/coltrane/chord_quality.rb |
coltrane-1.0.0 | lib/coltrane/chord_quality.rb |