def Deque.split

bend-kit-collections@0.1.4.1 · deque.bend:61

import bend-kit-collections@0.1.4.1/deque.bend as Deque
import Base

61# the first n elements, and the rest
62def Deque.split(a, -A: Kind(a), n: Nat, xs: List<a, A>) ->
63  List<a, A> & List<a, A>:
64  match n:
65    case 0n:
66      (Nil{}, xs)
67    case 1n+p:
68      match xs:
69        case Nil{}:
70          (Nil{}, Nil{})
71        case h <> t:
72          Deque.split.put(a, A, h, Deque.split(a, A, p, t))

Uses (5)

Used by (2)