@@ -13,9 +13,9 @@ enum Prefix2d[T] {
1313// make prefix for 1 dimension
1414
1515///|
16- fn [T : Add + Default ] prefix1d (data : Array [T ]) -> Array [T ] {
16+ fn [T : Add + Default ] prefix1d (data : Array [T ]) -> Array [T ] {
1717 let n = data .length ()
18- let ret : Array [T ] = Array ::make (n + 1 , T ::default ())
18+ let ret : Array [T ] = Array ::make (n + 1 , T ::default ())
1919 if n > 0 {
2020 ret [1 ] = data [0 ]
2121 for i = 1 ; i < n ; i = i + 1 {
@@ -28,13 +28,15 @@ fn[T: Add + Default] prefix1d(data : Array[T]) -> Array[T] {
2828// make prefix for 2 dimension
2929
3030///|
31- fn [T : Add + Sub + Default ] prefix2d (data : Array [Array [T ]]) -> Array [Array [T ]] {
31+ fn [T : Add + Sub + Default ] prefix2d (data : Array [Array [T ]]) -> Array [Array [T ]] {
3232 let n = data .length ()
3333 if n == 0 {
3434 return []
3535 }
3636 let m = data [0 ].length ()
37- let ret : Array [Array [T ]] = Array ::makei (n + 1 , fn (_row : Int ) { Array ::make (m + 1 , T ::default ()) })
37+ let ret : Array [Array [T ]] = Array ::makei (n + 1 , fn (_row : Int ) {
38+ Array ::make (m + 1 , T ::default ())
39+ })
3840 for i = 1 ; i <= n ; i = i + 1 {
3941 for j = 1 ; j <= m ; j = j + 1 {
4042 ret [i ][j ] = ret [i ][j - 1 ] +
@@ -64,7 +66,7 @@ fn[T: Add + Sub + Default] prefix2d(data : Array[Array[T]]) -> Array[Array[T]] {
6466/// let pre1 = Prefix1d::from(a1)
6567/// inspect(pre1.sum(2, 4), content="9")
6668/// ```
67- pub fn [T : Sub ] Prefix1d ::sum (self : Self [T ], left : Int , right : Int ) -> T {
69+ pub fn [T : Sub ] Prefix1d ::sum (self : Self [T ], left : Int , right : Int ) -> T {
6870 match self {
6971 Nil => abort ("Cannot sum on an empty prefix structure" )
7072 Pre (pre , n ) => {
@@ -91,7 +93,7 @@ pub fn[T: Sub] Prefix1d::sum(self : Self[T], left : Int, right : Int) -> T {
9193/// let arr = [1, 2, 3, 4]
9294/// let _ = Prefix1d::from(arr)
9395/// ```
94- pub fn [T : Add + Default ] Prefix1d ::from (data : Array [T ]) -> Prefix1d [T ] {
96+ pub fn [T : Add + Default ] Prefix1d ::from (data : Array [T ]) -> Prefix1d [T ] {
9597 match data .length () {
9698 0 => Nil
9799 n => Pre (prefix1d (data ), n )
@@ -118,7 +120,13 @@ pub fn[T: Add + Default] Prefix1d::from(data : Array[T]) -> Prefix1d[T] {
118120/// let pre2 = Prefix2d::from(a2)
119121/// inspect(pre2.sum(2,2,3,3), content="34")
120122/// ```
121- pub fn [T : Add + Sub ] Prefix2d ::sum (self : Self [T ], x1 : Int , y1 : Int , x2 : Int , y2 : Int ) -> T {
123+ pub fn [T : Add + Sub ] Prefix2d ::sum (
124+ self : Self [T ],
125+ x1 : Int ,
126+ y1 : Int ,
127+ x2 : Int ,
128+ y2 : Int ,
129+ ) -> T {
122130 match self {
123131 Nil => abort ("Cannot sum on an empty prefix structure" )
124132 Pre (pre , n , m ) => {
@@ -145,7 +153,9 @@ pub fn[T: Add + Sub] Prefix2d::sum(self : Self[T], x1 : Int, y1 : Int, x2 : Int,
145153/// let arr = [[1,2,3],[5,6,7],[9,10,11]]
146154/// let _ = Prefix2d::from(arr)
147155/// ```
148- pub fn [T : Add + Sub + Default ] Prefix2d ::from (data : Array [Array [T ]]) -> Prefix2d [T ] {
156+ pub fn [T : Add + Sub + Default ] Prefix2d ::from (
157+ data : Array [Array [T ]],
158+ ) -> Prefix2d [T ] {
149159 let n = data .length ()
150160 if n == 0 {
151161 return Nil
0 commit comments