Module: Musa::Neumalang::Neumalang::Parser::ProcessOfVectors

Defined in:
lib/musa-dsl/neumalang/neumalang.rb

Instance Method Summary collapse

Instance Method Details

#valueObject



166
167
168
169
170
171
172
173
174
175
176
177
178
179
# File 'lib/musa-dsl/neumalang/neumalang.rb', line 166

def value
  durations_rest = []
  i = 0

  rests = captures(:rest).collect(&:value)
  captures(:durations).collect(&:value).each do |duration|
    durations_rest[i * 2] = duration
    durations_rest[i * 2 + 1] = rests[i]
    i += 1
  end

  p = ([ capture(:first).value ] + durations_rest).extend(Musa::Datasets::P)
  { kind: :p, p: p }.extend(Musa::Neumas::Neuma)
end