Skip to content

Commit cd40c3b

Browse files
committed
Every, Filter, Some, Splice, Replace
1 parent fb87646 commit cd40c3b

File tree

5 files changed

+38
-8
lines changed

5 files changed

+38
-8
lines changed

src/lualib/ArrayEvery.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
function __TS__ArrayEvery<T>(arr: T[], callbackfn: (value: T, index?: number, array?: any[]) => void, thisArg?: any) {
2+
for (let i = 0; i < arr.length; i++) {
3+
if (!callbackfn(arr[i], i, arr)) {
4+
return false;
5+
}
6+
}
7+
return true;
8+
}

src/lualib/ArrayFilter.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
function __TS__ArrayFilter<T>(arr: T[], callbackfn: (value: T, index?: number, array?: any[]) => void, thisArg?: any) {
2+
const result: T[] = [];
3+
for (let i = 0; i < arr.length; i++) {
4+
if (callbackfn(arr[i], i, arr)) {
5+
result[result.length] = arr[i];
6+
}
7+
}
8+
return result;
9+
}

src/lualib/ArraySome.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
function __TS__ArraySome<T>(arr: T[], callbackfn: (value: T, index?: number, array?: any[]) => void, thisArg?: any) {
2+
for (let i = 0; i < arr.length; i++) {
3+
if (callbackfn(arr[i], i, arr)) {
4+
return true;
5+
}
6+
}
7+
return false;
8+
}

src/lualib/ArraySplice.ts

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,8 @@ function __TS__ArraySplice<T>(list: T[], start: number, deleteCount: number, ...
3333
const out: T[] = [];
3434

3535
// 10.
36-
let k = 0;
37-
3836
// 11.
39-
for (k = 0; k < actualDeleteCount; k++) {
37+
for (let k = 0; k < actualDeleteCount; k++) {
4038
const from = actualStart + k;
4139

4240
if (list[from]) {
@@ -47,7 +45,7 @@ function __TS__ArraySplice<T>(list: T[], start: number, deleteCount: number, ...
4745
// 15.
4846
if (itemCount < actualDeleteCount) {
4947
// a. b.
50-
for (k = actualStart; k < len - actualDeleteCount; k++) {
48+
for (let k = actualStart; k < len - actualDeleteCount; k++) {
5149
const from = k + actualDeleteCount;
5250
const to = k + itemCount;
5351

@@ -58,13 +56,13 @@ function __TS__ArraySplice<T>(list: T[], start: number, deleteCount: number, ...
5856
}
5957
}
6058
// c. d.
61-
for (k = len; k > len - actualDeleteCount + itemCount; k--) {
59+
for (let k = len; k > len - actualDeleteCount + itemCount; k--) {
6260
list[k] = undefined;
6361
}
6462
// 16.
6563
} else if (itemCount > actualDeleteCount) {
6664

67-
for (k = len - actualDeleteCount; k > actualStart; k--) {
65+
for (let k = len - actualDeleteCount; k > actualStart; k--) {
6866
const from = k + actualDeleteCount - 1;
6967
const to = k + itemCount - 1;
7068

@@ -79,13 +77,13 @@ function __TS__ArraySplice<T>(list: T[], start: number, deleteCount: number, ...
7977

8078
// 17.
8179
// 18.
82-
for (k = actualStart; k < items.length; k++) {
80+
for (let k = actualStart; k < items.length; k++) {
8381
const e = items[k];
8482
list[k] = e;
8583
}
8684

8785
// 19.
88-
for (k = list.length; k > len - actualDeleteCount + itemCount; k--) {
86+
for (let k = list.length; k > len - actualDeleteCount + itemCount; k--) {
8987
list[k] = undefined;
9088
}
9189

src/lualib/StringReplace.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
declare namespace string {
2+
function gsub(source: string, searchValue: string, replaceValue: string);
3+
}
4+
5+
function __TS__replace(source: string, searchValue: string, replaceValue: string) {
6+
return string.gsub(source, searchValue, replaceValue);
7+
}

0 commit comments

Comments
 (0)