fix (! sig) bugs
s-ol
6 months ago
481 | 481 | value: class extends Op |
482 | 482 | pattern = (sig! + evt.bang) / (sig! / evt!)\rep(1,1) |
483 | 483 | setup: (inputs) => |
484 | { sig, trig } = pattern\match inputs | |
484 | { sig_, trig } = pattern\match inputs | |
485 | 485 | if trig |
486 | 486 | super |
487 | 487 | trig: Input.hot trig |
488 | sig: Input.cold sig | |
488 | sig: Input.cold sig_ | |
489 | 489 | elseif sig\metatype! == '!' |
490 | 490 | super |
491 | trig: Input.hot sig | |
491 | trig: Input.hot sig_ | |
492 | 492 | sig: Input.cold Constant.bang true |
493 | 493 | else |
494 | super sig: Input.hot sig | |
494 | super sig: Input.hot sig_ | |
495 | 495 | @out = @inputs.sig\type!\mk_evt! |
496 | 496 | |
497 | tick: => | |
497 | tick: (setup) => | |
498 | return if setup | |
498 | 499 | @out\set @inputs.sig! |
499 | 500 | |
500 | 501 | array = Constant.meta |