1+ /* eslint-disable @typescript-eslint/strict-boolean-expressions */
2+
13import { fold } from "@softwareventures/array" ;
24
35/** Coerces the specified value to a signed 32-bit integer. */
@@ -6,15 +8,16 @@ export function i32(value: number): number {
68}
79
810export function inot ( value : number ) : number {
9- return ( ( ! ( value | 0 ) ) as any ) | 0 ;
11+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
12+ return ( ! ( value | 0 ) as any ) | 0 ;
1013}
1114
1215export function icmp ( value : number ) : number {
1316 return ~ value ;
1417}
1518
1619export function ineg ( value : number ) : number {
17- return ( - ( value | 0 ) ) | 0 ;
20+ return - ( value | 0 ) | 0 ;
1821}
1922
2023export function ipow ( a : number , b : number ) : number {
@@ -39,6 +42,7 @@ export function ipow(a: number, b: number): number {
3942 }
4043
4144 let accumulator = 1 ;
45+ // eslint-disable-next-line no-constant-condition
4246 while ( true ) {
4347 if ( exp & 1 ) {
4448 const next = imul ( accumulator , base ) ;
@@ -69,7 +73,7 @@ export function idiv(a: number, b: number): number {
6973}
7074
7175export function imod ( a : number , b : number ) : number {
72- return ( ( a | 0 ) % ( b | 0 ) ) | 0 ;
76+ return ( a | 0 ) % ( b | 0 ) | 0 ;
7377}
7478
7579export function iadd ( a : number , b : number ) : number {
@@ -93,26 +97,32 @@ export function ishr(a: number, b: number): number {
9397}
9498
9599export function ilt ( a : number , b : number ) : number {
100+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
96101 return ( ( ( a | 0 ) < ( b | 0 ) ) as any ) | 0 ;
97102}
98103
99104export function ilte ( a : number , b : number ) : number {
105+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
100106 return ( ( ( a | 0 ) <= ( b | 0 ) ) as any ) | 0 ;
101107}
102108
103109export function igt ( a : number , b : number ) : number {
110+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
104111 return ( ( ( a | 0 ) > ( b | 0 ) ) as any ) | 0 ;
105112}
106113
107114export function igte ( a : number , b : number ) : number {
115+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
108116 return ( ( ( a | 0 ) >= ( b | 0 ) ) as any ) | 0 ;
109117}
110118
111119export function ieq ( a : number , b : number ) : number {
120+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
112121 return ( ( ( a | 0 ) === ( b | 0 ) ) as any ) | 0 ;
113122}
114123
115124export function ineq ( a : number , b : number ) : number {
125+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
116126 return ( ( ( a | 0 ) !== ( b | 0 ) ) as any ) | 0 ;
117127}
118128
@@ -129,9 +139,11 @@ export function ibor(a: number, b: number): number {
129139}
130140
131141export function iand ( a : number , b : number ) : number {
132- return ( ( ( a | 0 ) && ( b | 0 ) ) as any ) | 0 ;
142+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
143+ return ( ( a | 0 && b | 0 ) as any ) | 0 ;
133144}
134145
135146export function ior ( a : number , b : number ) : number {
136- return ( ( ( a | 0 ) || ( b | 0 ) ) as any ) | 0 ;
137- }
147+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
148+ return ( ( a | 0 || b | 0 ) as any ) | 0 ;
149+ }
0 commit comments