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

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

Instance Method Summary collapse

Instance Method Details

#valueObject



155
156
157
158
159
160
161
162
163
164
165
166
167
168
# File 'lib/musa-dsl/neumalang/neumalang.rb', line 155

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