fix and test rev
This commit is contained in:
parent
cba0084e3d
commit
2756155b7c
2 changed files with 14 additions and 5 deletions
|
|
@ -452,18 +452,22 @@ class Pattern {
|
||||||
}
|
}
|
||||||
|
|
||||||
rev() {
|
rev() {
|
||||||
|
var pat = this
|
||||||
var query = function(span) {
|
var query = function(span) {
|
||||||
var cycle = span.begin.sam()
|
var cycle = span.begin.sam()
|
||||||
var next_cycle = span.begin.nextSam()
|
var next_cycle = span.begin.nextSam()
|
||||||
var reflect = function(to_reflect) {
|
var reflect = function(to_reflect) {
|
||||||
var reflected = to_reflect.withTime(time => cycle + (next_cycle - time))
|
var reflected = to_reflect.withTime(time => cycle.add(next_cycle.sub(time)))
|
||||||
[reflected.begin, reflected.end] = [reflected.end, reflected.begin]
|
// [reflected.begin, reflected.end] = [reflected.end, reflected.begin] -- didn't work
|
||||||
|
var tmp = reflected.begin
|
||||||
|
reflected.begin = reflected.end
|
||||||
|
reflected.end = tmp
|
||||||
return reflected
|
return reflected
|
||||||
}
|
}
|
||||||
var haps = this.query(reflect(span))
|
var haps = pat.query(reflect(span))
|
||||||
return haps.map(hap => hap.with_span(reflect))
|
return haps.map(hap => hap.withSpan(reflect))
|
||||||
}
|
}
|
||||||
return Pattern(query).split_queries()
|
return new Pattern(query)._splitQueries()
|
||||||
}
|
}
|
||||||
|
|
||||||
// jux(func, by=1) {
|
// jux(func, by=1) {
|
||||||
|
|
|
||||||
|
|
@ -115,4 +115,9 @@ describe('Pattern', function() {
|
||||||
assert.deepStrictEqual(slowcat([pure("a"), pure("b")])._early(1).firstCycle.map(x => x.value), ["b"])
|
assert.deepStrictEqual(slowcat([pure("a"), pure("b")])._early(1).firstCycle.map(x => x.value), ["b"])
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
describe('rev()', function () {
|
||||||
|
it('Can reverse things', function () {
|
||||||
|
assert.deepStrictEqual(fastcat([pure("a"), pure("b"), pure("c")]).rev().firstCycle.sort((a,b) => a.part.begin.sub(b.part.begin)).map(a => a.value), ["c", "b","a"])
|
||||||
|
})
|
||||||
|
})
|
||||||
})
|
})
|
||||||
Loading…
Add table
Add a link
Reference in a new issue