def expand_semiglobal.choose
bend-edit-distance@0.2.2.0 · src/Myers.bend:495
import bend-edit-distance@0.2.2.0/src/Myers.bend as Myers
import Base
import bend-edit-distance@0.2.2.0/EdlibTypes.bend as E
495def expand_semiglobal.choose(entries: List<&2, BandEntry>, profile: Peq,
496 rest: List<&2, Peq>, previous: U32, eq: U32,
497 carry: Carry, mode: E.Mode, maximum: Nat, expand: Bool) -> Band:
498 match expand:
499 case True{}:
500 expand_semiglobal.result(calculate_block(Block{4294967295, 0, U32.add(previous, 32)}, eq, carry),
501 entries, profile, rest, mode, maximum)
502 case False{}:
503 reduce_semiglobal(trim_semiglobal(entries, profile <> rest, mode, 0n, maximum))