summaryrefslogtreecommitdiff
path: root/src/lang/ts-lang/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/lang/ts-lang/core')
-rw-r--r--src/lang/ts-lang/core/eval.ts6
-rw-r--r--src/lang/ts-lang/core/lexer.ts2
2 files changed, 7 insertions, 1 deletions
diff --git a/src/lang/ts-lang/core/eval.ts b/src/lang/ts-lang/core/eval.ts
index ebc58e7..b937c2e 100644
--- a/src/lang/ts-lang/core/eval.ts
+++ b/src/lang/ts-lang/core/eval.ts
@@ -6,8 +6,10 @@ import {
BUILTIN_Sub,
BUILTIN_ToString,
SBUILTIN_Call,
+ SBUILTIN_Filter,
SBUILTIN_IfElse,
SBUILTIN_Map,
+ SBUILTIN_Reduce,
} from "../builtin";
import { ToString } from "../util";
import {
@@ -34,6 +36,10 @@ export type MapBuiltins<
? SBUILTIN_Call<Node, Frame, Callstack>
: Node["name"] extends "map"
? SBUILTIN_Map<Node, Frame, Callstack>
+ : Node["name"] extends "reduce"
+ ? SBUILTIN_Reduce<Node, Frame, Callstack>
+ : Node["name"] extends "filter"
+ ? SBUILTIN_Filter<Node, Frame, Callstack>
: Node["name"] extends "?"
? SBUILTIN_IfElse<Node, Frame, Callstack>
: Node["name"] extends "tostring"
diff --git a/src/lang/ts-lang/core/lexer.ts b/src/lang/ts-lang/core/lexer.ts
index bcd5785..43dc3e5 100644
--- a/src/lang/ts-lang/core/lexer.ts
+++ b/src/lang/ts-lang/core/lexer.ts
@@ -36,7 +36,7 @@ export type IsClose<T> = T extends `${TokenType.CLOSE_PAREN}` ? true : false;
export type ChunkedLex<
Ctx extends LexerCtx,
Depth extends any[] = []
-> = Depth["length"] extends 50
+> = Depth["length"] extends 25
? Ctx & {
endChunk: true;
}