@nudojs/core 1.16.0 → 1.17.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-OM6SAY2M.js → chunk-CUFP2AYV.js} +6429 -5834
- package/dist/{chunk-POGFCYV2.js → chunk-G27PMV2U.js} +290 -239
- package/dist/exec.d.ts +326 -121
- package/dist/exec.js +14 -16
- package/dist/index.d.ts +57 -79
- package/dist/index.js +24 -210
- package/dist/internal.d.ts +16 -41
- package/dist/internal.js +3 -32
- package/dist/{projection-budget-DW-svmIf.d.ts → projection-budget-NCXMnUDn.d.ts} +4 -1
- package/dist/{run-T9HWTziZ.d.ts → run-DeKkteRZ.d.ts} +55 -40
- package/package.json +1 -1
- /package/dist/{chunk-US532PZA.js → chunk-II73GZOY.js} +0 -0
package/dist/internal.js
CHANGED
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
stablePathKey,
|
|
31
31
|
stablePathKeyGraph,
|
|
32
32
|
toJsBindingIdent
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-G27PMV2U.js";
|
|
34
34
|
import {
|
|
35
35
|
$tryDigestSoft,
|
|
36
36
|
$tryMarkSoft,
|
|
@@ -58,17 +58,12 @@ import {
|
|
|
58
58
|
allAbsStr,
|
|
59
59
|
allFixedTextOfViews,
|
|
60
60
|
anyMemberResult,
|
|
61
|
-
awaitAbs,
|
|
62
61
|
beginDerivationSession,
|
|
63
62
|
bumpEvalForkBudget,
|
|
64
63
|
callBudgetKey,
|
|
65
|
-
canonicalArrayIndex,
|
|
66
|
-
classChainNames,
|
|
67
|
-
classFromMethods,
|
|
68
64
|
clearLiveImportRefreshers,
|
|
69
65
|
clearPureCallMemo,
|
|
70
66
|
clearPureMemo,
|
|
71
|
-
coerceAsyncReturn,
|
|
72
67
|
concatString,
|
|
73
68
|
createScopedSlot,
|
|
74
69
|
createTemplateAbs,
|
|
@@ -76,7 +71,6 @@ import {
|
|
|
76
71
|
decideIncludes,
|
|
77
72
|
decideStartsWith,
|
|
78
73
|
defaultLeakBudget,
|
|
79
|
-
defineClass,
|
|
80
74
|
definitelyUncallableMember,
|
|
81
75
|
derivationChain,
|
|
82
76
|
endDerivationSession,
|
|
@@ -96,7 +90,6 @@ import {
|
|
|
96
90
|
formatThrowsAbs,
|
|
97
91
|
getAbsCallBudgetStats,
|
|
98
92
|
getAbsOrigin,
|
|
99
|
-
getClass,
|
|
100
93
|
getClassChain,
|
|
101
94
|
getDerivation,
|
|
102
95
|
getEvalCallBudgetState,
|
|
@@ -106,9 +99,8 @@ import {
|
|
|
106
99
|
getMayThrowCollector,
|
|
107
100
|
getPromiseMicrosLength,
|
|
108
101
|
hasDerivationSession,
|
|
109
|
-
instanceOf,
|
|
110
|
-
instantiateClass,
|
|
111
102
|
isEvalMissingSlotEnabled,
|
|
103
|
+
isHiddenInternalSlot,
|
|
112
104
|
isNullishAbs,
|
|
113
105
|
isTemplateLike,
|
|
114
106
|
isThrowsIgnored,
|
|
@@ -117,9 +109,6 @@ import {
|
|
|
117
109
|
leakIfNeeded,
|
|
118
110
|
litKeyString,
|
|
119
111
|
litValue,
|
|
120
|
-
lookupMethod,
|
|
121
|
-
lookupMethodWithOwner,
|
|
122
|
-
lookupSuperMethod,
|
|
123
112
|
maskCommentsAndStrings,
|
|
124
113
|
mayThrowEffectsToAbs,
|
|
125
114
|
maybeLeak,
|
|
@@ -140,7 +129,6 @@ import {
|
|
|
140
129
|
popCallLoc,
|
|
141
130
|
popMayThrowFrame,
|
|
142
131
|
predToString,
|
|
143
|
-
projectBrand,
|
|
144
132
|
projectDerivationDsl,
|
|
145
133
|
pushCallLoc,
|
|
146
134
|
pushMayThrowFrame,
|
|
@@ -168,7 +156,6 @@ import {
|
|
|
168
156
|
stableCallId,
|
|
169
157
|
stripCommentsAndStrings,
|
|
170
158
|
stripStringsKeepComments,
|
|
171
|
-
superNameOf,
|
|
172
159
|
tagAbsOrigin,
|
|
173
160
|
tagDerivationRoot,
|
|
174
161
|
templateMatchesValue,
|
|
@@ -185,7 +172,7 @@ import {
|
|
|
185
172
|
withEvalBudgetOverride,
|
|
186
173
|
withFnBudgetOverride,
|
|
187
174
|
wrapPromise
|
|
188
|
-
} from "./chunk-
|
|
175
|
+
} from "./chunk-CUFP2AYV.js";
|
|
189
176
|
|
|
190
177
|
// src/algebra/inlay.ts
|
|
191
178
|
function listFunctions(source) {
|
|
@@ -408,9 +395,6 @@ function collectAbsInlays(source, opts) {
|
|
|
408
395
|
}
|
|
409
396
|
|
|
410
397
|
// src/algebra/denote.ts
|
|
411
|
-
function isHiddenInternalSlot(k, slot) {
|
|
412
|
-
return slot.internal === true && canonicalArrayIndex(k) === void 0;
|
|
413
|
-
}
|
|
414
398
|
var PROTOTYPE_LESS_GLOBALS = /* @__PURE__ */ new Set([
|
|
415
399
|
// 可调用但没有对象 prototype
|
|
416
400
|
"Proxy",
|
|
@@ -666,19 +650,15 @@ export {
|
|
|
666
650
|
allAbsStr,
|
|
667
651
|
allFixedTextOfViews,
|
|
668
652
|
anyMemberResult,
|
|
669
|
-
awaitAbs,
|
|
670
653
|
beginDerivationSession,
|
|
671
654
|
budgetAttributionSegs,
|
|
672
655
|
bumpEvalForkBudget,
|
|
673
656
|
callBudgetKey,
|
|
674
657
|
canSkipLiteralCallScan,
|
|
675
658
|
checkInjectedDomainEvidence,
|
|
676
|
-
classChainNames,
|
|
677
|
-
classFromMethods,
|
|
678
659
|
clearLiveImportRefreshers,
|
|
679
660
|
clearPureCallMemo,
|
|
680
661
|
clearPureMemo,
|
|
681
|
-
coerceAsyncReturn,
|
|
682
662
|
collectAbsInlays,
|
|
683
663
|
concatString,
|
|
684
664
|
createDiagChannel,
|
|
@@ -689,7 +669,6 @@ export {
|
|
|
689
669
|
decideIncludes,
|
|
690
670
|
decideStartsWith,
|
|
691
671
|
defaultLeakBudget,
|
|
692
|
-
defineClass,
|
|
693
672
|
definitelyUncallableMember,
|
|
694
673
|
denoteGuard,
|
|
695
674
|
derivationChain,
|
|
@@ -715,7 +694,6 @@ export {
|
|
|
715
694
|
generalizeSourceKeyPart,
|
|
716
695
|
getAbsCallBudgetStats,
|
|
717
696
|
getAbsOrigin,
|
|
718
|
-
getClass,
|
|
719
697
|
getClassChain,
|
|
720
698
|
getDerivation,
|
|
721
699
|
getEvalCallBudgetState,
|
|
@@ -727,8 +705,6 @@ export {
|
|
|
727
705
|
getPromiseMicrosLength,
|
|
728
706
|
hasDerivationSession,
|
|
729
707
|
hashSource,
|
|
730
|
-
instanceOf,
|
|
731
|
-
instantiateClass,
|
|
732
708
|
isEvalMissingSlotEnabled,
|
|
733
709
|
isJsBindingIdent,
|
|
734
710
|
isJsIdent,
|
|
@@ -740,9 +716,6 @@ export {
|
|
|
740
716
|
leakIfNeeded,
|
|
741
717
|
listTopFunctions,
|
|
742
718
|
loadModuleDepsFingerprint,
|
|
743
|
-
lookupMethod,
|
|
744
|
-
lookupMethodWithOwner,
|
|
745
|
-
lookupSuperMethod,
|
|
746
719
|
maskCommentsAndStrings,
|
|
747
720
|
mayThrowEffectsToAbs,
|
|
748
721
|
maybeLeak,
|
|
@@ -762,7 +735,6 @@ export {
|
|
|
762
735
|
orphanMayThrowEffects,
|
|
763
736
|
popCallLoc,
|
|
764
737
|
popMayThrowFrame,
|
|
765
|
-
projectBrand,
|
|
766
738
|
projectDerivationDsl,
|
|
767
739
|
pushCallLoc,
|
|
768
740
|
pushMayThrowFrame,
|
|
@@ -799,7 +771,6 @@ export {
|
|
|
799
771
|
stablePathKeyGraph,
|
|
800
772
|
stripCommentsAndStrings,
|
|
801
773
|
stripStringsKeepComments,
|
|
802
|
-
superNameOf,
|
|
803
774
|
tagAbsOrigin,
|
|
804
775
|
tagDerivationRoot,
|
|
805
776
|
templateMatchesValue,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { File } from '@babel/types';
|
|
2
|
-
import { A as Abs, T as Term, P as PrimName, a as Pred, L as LiteralValue, C as Confidence, b as Phi } from './run-
|
|
2
|
+
import { A as Abs, T as Term, P as PrimName, a as Pred, L as LiteralValue, C as Confidence, b as Phi } from './run-DeKkteRZ.js';
|
|
3
3
|
|
|
4
4
|
declare function resetParseSourceCache(): void;
|
|
5
5
|
declare function getParseSourceCacheSize(): number;
|
|
@@ -461,6 +461,9 @@ declare function extractFnBudget(source: string, fnName: string): {
|
|
|
461
461
|
* - CJS(C4.3):`module.exports = { a, b }`、`module.exports.a = …`、
|
|
462
462
|
* `exports.a = …`、`module.exports = localFn`(登记 localFn 名)。
|
|
463
463
|
* 排除 re-export(`export {x} from` / `export *`)。
|
|
464
|
+
*
|
|
465
|
+
* 结果按源码文本 memo(见 `memoizedLocalExports`)——本函数在逐候选循环里
|
|
466
|
+
* 被反复调用,没有 memo 时每次都是整文件 reparse + strip。
|
|
464
467
|
*/
|
|
465
468
|
declare function localNamedExports(source: string): Set<string>;
|
|
466
469
|
/**
|
|
@@ -389,7 +389,7 @@ declare function filterDeclaredThrows(effects: MayThrowEffect[], declared: reado
|
|
|
389
389
|
* 3. 无 impl 时 isRelFn 可走 E 路径(旧版恒 unknown)
|
|
390
390
|
*/
|
|
391
391
|
|
|
392
|
-
/** 清空 pure memo(宿主入口 /
|
|
392
|
+
/** 清空 pure memo(宿主入口 / 会话缓存失效;清**全部**实例——两条调用路径) */
|
|
393
393
|
declare function clearPureMemo(): void;
|
|
394
394
|
/**
|
|
395
395
|
* apply 返回的 throws 面 → 调用方控制流通道(H1 单点路由)。
|
|
@@ -421,7 +421,7 @@ type EvalCallRecord = {
|
|
|
421
421
|
* 局部量投影按帧过滤重入记录(与 $nodoPos 同口径)。 */
|
|
422
422
|
depth?: number;
|
|
423
423
|
};
|
|
424
|
-
/** 清空
|
|
424
|
+
/** 清空 pure memo(宿主入口 / 会话缓存失效;清**全部**实例——两条调用路径) */
|
|
425
425
|
declare function clearPureCallMemo(): void;
|
|
426
426
|
/** B 赋值记录(与 ast-records.ts AbsAssignRecord 同形;structuralAssignIssues 消费) */
|
|
427
427
|
type EvalAbsAssignRecord = {
|
|
@@ -431,13 +431,17 @@ type EvalAbsAssignRecord = {
|
|
|
431
431
|
line?: number;
|
|
432
432
|
column?: number;
|
|
433
433
|
conditional?: boolean;
|
|
434
|
+
/** 写目标是函数形参(AbsAssignRecord.paramBinding) */
|
|
435
|
+
paramBinding?: boolean;
|
|
434
436
|
/** 调用方帧深度(0 = 最外层求值帧;与 EvalCallRecord.depth 同口径) */
|
|
435
437
|
depth?: number;
|
|
436
438
|
};
|
|
437
439
|
/** 返回先前 collector,便于嵌套调用 save/restore(禁止 finally 置 null 砸外层) */
|
|
438
440
|
declare function setEvalAssignCollector(collector: ((r: EvalAbsAssignRecord) => void) | null): ((r: EvalAbsAssignRecord) => void) | null;
|
|
439
441
|
/** 结构赋值记录(transpile 插桩调用;无收集器时 no-op) */
|
|
440
|
-
declare function $assignRecord(name: string, prev: Abs | undefined, next: Abs, line: number, column: number, conditional: boolean
|
|
442
|
+
declare function $assignRecord(name: string, prev: Abs | undefined, next: Abs, line: number, column: number, conditional: boolean,
|
|
443
|
+
/** 写目标是函数形参(可选;缺省 false ⇒ 产物逐字不变) */
|
|
444
|
+
paramBinding?: boolean): void;
|
|
441
445
|
/** 位置级 Abs 记录(hover 重放插桩 `$nodoPos` 消费):
|
|
442
446
|
* (1-based 行, 0-based 列) → 该位置表达式求值态 Abs */
|
|
443
447
|
type EvalPosRecord = {
|
|
@@ -454,7 +458,7 @@ declare function getPosCollector(): ((r: EvalPosRecord) => void) | null;
|
|
|
454
458
|
* 记入活跃 collector 并**原样返回**(语义恒等);无收集器时
|
|
455
459
|
* 直通(热路径零开销——仅重放开插桩)。
|
|
456
460
|
*
|
|
457
|
-
* 仅记最外层求值帧(
|
|
461
|
+
* 仅记最外层求值帧(evalBudget.depth === 0):递归函数的内层帧
|
|
458
462
|
* ($callNamed/$new 预算帧)会以重入态重执行同一源码位置——
|
|
459
463
|
* 自递归类型(lazy 自引用契约)下内层帧携带 cycle 截断的
|
|
460
464
|
* opaque unknown,first-wins 记录会以外层正确值被污染为序;
|
|
@@ -474,10 +478,9 @@ declare function getEvalCallCollector(): ((r: EvalCallRecord) => void) | null;
|
|
|
474
478
|
* loc: [line, column](1-based line,0-based column,与 Babel 一致)
|
|
475
479
|
* argLocs: 与 args 对齐的实参字面量源位置(provenance;无 loc 用 null)
|
|
476
480
|
*/
|
|
481
|
+
/** B 命名调用深度上限——与 A 路径同值(@nudo:budget 可逐函数抬高) */
|
|
477
482
|
declare const MAX_EVAL_CALL_DEPTH = 64;
|
|
478
|
-
/**
|
|
479
|
-
* 规模阀)。200k 在病态展开(lodash _baseFlatten)下 ~30s,20k 收口到
|
|
480
|
-
* ~3s——截断 → opaque(更保守,zero-FP 安全)。 */
|
|
483
|
+
/** B 命名调用总调用上限——与 A 路径同值(递归×循环×分支展开的规模阀) */
|
|
481
484
|
declare const MAX_EVAL_TOTAL_CALLS = 20000;
|
|
482
485
|
/** 宿主入口前强制清零(测试 / 显式 API)。执行入口请用 enterEvalCallBudgetSession。 */
|
|
483
486
|
declare function resetEvalCallBudget(): void;
|
|
@@ -504,13 +507,13 @@ declare function getEvalCallBudgetState(): {
|
|
|
504
507
|
declare function $callNamed(name: string, fn: unknown, args: Abs[], loc?: [number, number], argLocs?: Array<[number, number] | null | undefined>): Abs;
|
|
505
508
|
|
|
506
509
|
/**
|
|
507
|
-
* 共享纯类型结点(AstEnv /
|
|
510
|
+
* 共享纯类型结点(AstEnv / HofSite / RelSource)。
|
|
508
511
|
*
|
|
509
|
-
* 这些类型曾形成 ast-env ↔ hof ↔ abs-fn 的类型环(ast-env 引
|
|
510
|
-
* hof/abs-fn 引 AstEnv)。抽到本叶模块(只依赖 abs/term/babel,不回指
|
|
512
|
+
* 这些类型曾形成 ast-env ↔ hof ↔ abs-fn 的类型环(ast-env 引 HOF collector
|
|
513
|
+
* 类型,hof/abs-fn 引 AstEnv)。抽到本叶模块(只依赖 abs/term/babel,不回指
|
|
511
514
|
* ast-env/hof/abs-fn)后,三个消费方都从这里取类型,环即断。
|
|
512
515
|
*
|
|
513
|
-
* 稳定导入路径不变:ast-env.ts 重导出 AstEnv,hof.ts 重导出 HOF
|
|
516
|
+
* 稳定导入路径不变:ast-env.ts 重导出 AstEnv,hof.ts 重导出 HOF 两类型。
|
|
514
517
|
*/
|
|
515
518
|
|
|
516
519
|
/**
|
|
@@ -533,30 +536,6 @@ type HofSite = {
|
|
|
533
536
|
column: number;
|
|
534
537
|
};
|
|
535
538
|
};
|
|
536
|
-
/**
|
|
537
|
-
* run 局部 collector(与 Phi 并列,不进 Φ 合并)。
|
|
538
|
-
* symbolic 一次跑:安装并沉淀到 PolyFn;instantiate 重跑:装 throwaway
|
|
539
|
-
* 副本——形状提升仍生效,结果不写回共享状态(见 generalize.ts run())。
|
|
540
|
-
*/
|
|
541
|
-
type HofCollectCtx = {
|
|
542
|
-
/** 本次归纳的形参名集合(身份判定用) */
|
|
543
|
-
paramNames: ReadonlySet<string>;
|
|
544
|
-
/** 本次 typeParams 的 α id 集合(term 复用白名单) */
|
|
545
|
-
alphaIds: Set<string>;
|
|
546
|
-
/** fresh α 计数 */
|
|
547
|
-
freshSeq: {
|
|
548
|
-
n: number;
|
|
549
|
-
};
|
|
550
|
-
sites: HofSite[];
|
|
551
|
-
fnRels: Map<string, {
|
|
552
|
-
abs: Abs;
|
|
553
|
-
source: RelSource;
|
|
554
|
-
}>;
|
|
555
|
-
entryShapes: Map<string, {
|
|
556
|
-
abs: Abs;
|
|
557
|
-
source: RelSource;
|
|
558
|
-
}>;
|
|
559
|
-
};
|
|
560
539
|
type AstEnv = {
|
|
561
540
|
vars: Map<string, Abs>;
|
|
562
541
|
/** 用户函数:name → { params, body } */
|
|
@@ -570,13 +549,19 @@ type AstEnv = {
|
|
|
570
549
|
* 默认值 / 带 `?` / 是 rest)⇒ 必选元数不再靠名字后缀猜。
|
|
571
550
|
*/
|
|
572
551
|
optionalParams?: boolean[];
|
|
552
|
+
/**
|
|
553
|
+
* 源码面严格性(strict mode code → true;sloppy → false):ESM 源 ∨
|
|
554
|
+
* `"use strict"` 序言(`code-text.ts#sourceIsStrict`),strict 代码区内
|
|
555
|
+
* 词法继承,class 方法体恒 true。env 条目被包装成 Abs fn
|
|
556
|
+
* (`absFunction`)时透传为 `AbsFnImpl.strict`,供 body 编译单元发射
|
|
557
|
+
* `"use strict";`。按**源面严格性**判定,不按函数猜。
|
|
558
|
+
*/
|
|
559
|
+
strict?: boolean;
|
|
573
560
|
}>;
|
|
574
561
|
/** class 表(旁路,withVar 必须保留) */
|
|
575
562
|
classes?: Map<string, unknown>;
|
|
576
563
|
/** 当前正在求值的方法所属类名(super.x() 从它的父类派发) */
|
|
577
564
|
currentOwner?: string;
|
|
578
|
-
/** P2:generalize symbolic 跑的 HOF collector(run 局部,不进 Φ) */
|
|
579
|
-
hofCollect?: HofCollectCtx;
|
|
580
565
|
};
|
|
581
566
|
|
|
582
567
|
/**
|
|
@@ -700,6 +685,16 @@ type AbsFnImpl = {
|
|
|
700
685
|
};
|
|
701
686
|
/** `@nudo:pure`:调用结果按实参记忆化(无副作用契约) */
|
|
702
687
|
pureName?: string;
|
|
688
|
+
/**
|
|
689
|
+
* 源码面严格性(strict mode code → true;sloppy → false;未知不写):
|
|
690
|
+
* ESM 源 **∨** 序言含 `"use strict"` 指令(`code-text.ts#sourceIsStrict`),
|
|
691
|
+
* 且 strict 代码区内词法继承(strict 函数体 / class 体内恒 strict);
|
|
692
|
+
* class 方法体恒 true。body 编译单元(`exec/body-fn.ts`)据此发射
|
|
693
|
+
* `"use strict";`——块级函数声明、未声明赋值、形参/`arguments` 等
|
|
694
|
+
* sloppy↔strict 分叉必须与模块运行(B run 的 strict 前缀)同口径,
|
|
695
|
+
* 不能按函数猜。
|
|
696
|
+
*/
|
|
697
|
+
strict?: boolean;
|
|
703
698
|
/**
|
|
704
699
|
* M4:transpile 静态判定的「无副作用面」facet(保守:任意赋值/自增/
|
|
705
700
|
* 调用/delete/标签模板/非白名单 new 都算有副作用)。sort 等原生调用
|
|
@@ -745,7 +740,11 @@ declare function absFunction(params: string[], impl: Omit<AbsFnImpl, "params">,
|
|
|
745
740
|
* `$new` / `$class(extends)` / 桥接包装按此 stamping。
|
|
746
741
|
*/
|
|
747
742
|
declare function hostFnCtorFacet(v: Function): boolean | undefined;
|
|
748
|
-
/**
|
|
743
|
+
/**
|
|
744
|
+
* relationFn 稳定 fingerprint(同签名共享,见 §3.3 已知限制)。
|
|
745
|
+
* 结构序列化统一走 abs-key.ts(覆盖 holes / fn slots / optionalParams /
|
|
746
|
+
* ctor / obj 槽标志 / eff rejected / brand tv;无 α-rename)。
|
|
747
|
+
*/
|
|
749
748
|
declare function relationFingerprint(paramTypes: Abs[], returnType: Abs): string;
|
|
750
749
|
/**
|
|
751
750
|
* 无 body、纯关系的 fn Abs。params 仅记 arity。
|
|
@@ -876,7 +875,16 @@ type RunTranspiledOptions = {
|
|
|
876
875
|
* 的 CLI 注入不稳——同一语义的 inject 跨 checkSource 调用会 miss 缓存。
|
|
877
876
|
*/
|
|
878
877
|
declare function runTranspiledOptionsMemoKey(opts: RunTranspiledOptions | undefined): string;
|
|
879
|
-
|
|
878
|
+
|
|
879
|
+
/**
|
|
880
|
+
* run 表的**顶层绑定表**:
|
|
881
|
+
* - 顶层 const/let(`$recordBinding` 通道,Abs 值);
|
|
882
|
+
* - **私有**顶层函数声明(宿主 JS 函数;与 ANALYSIS_SLOTS 同源,导出面同名
|
|
883
|
+
* 可枚举键不重复登记——导出函数只走导出表)。
|
|
884
|
+
*
|
|
885
|
+
* 后者供 LSP completion / collectAbsBindingsFromGraph 与导出面复用同一套
|
|
886
|
+
* 宿主函数 → Abs 转换(源码形参表 / ctor facet)。
|
|
887
|
+
*/
|
|
880
888
|
declare function bindingsOf(run: Record<string, unknown>): Map<string, unknown> | undefined;
|
|
881
889
|
/**
|
|
882
890
|
* 执行一段 求值引擎程序,返回顶层 `export function` / `export const`。
|
|
@@ -929,12 +937,16 @@ declare function isAbsVal(v: unknown): v is Abs;
|
|
|
929
937
|
* callTranspiledExportApply)传引用——被调方对容器实参的变异必须对
|
|
930
938
|
* caller 帧可见(与同文件闭包调用同语义);宿主重放(case/记录/LSP)
|
|
931
939
|
* 不传,保持 D1 防御副本。
|
|
940
|
+
* opts.preferLocal:**分析面**语义——按源码本地函数名解析
|
|
941
|
+
* (nudo.analysis 表优先)。默认 false = 导出语义(callTranspiledExportApply
|
|
942
|
+
* 跨模块导出桥必须走导出槽;同名 re-export / CJS 合并值不得被本地函数顶替)。
|
|
932
943
|
* 嵌套进入(导出桥 apply)继承外层预算;仅最外层宿主入口重置。
|
|
933
944
|
* #152 assume 前提不设选项位:播种统一走 withAssumePremises 动态域
|
|
934
945
|
* 包裹(check.ts 的 runSeeded extent),单一机制无第二路径。 */
|
|
935
946
|
declare function callTranspiledExportFull(exports: Record<string, unknown>, name: string, args: Abs[], opts?: {
|
|
936
947
|
phi?: Phi;
|
|
937
948
|
shareArgs?: boolean;
|
|
949
|
+
preferLocal?: boolean;
|
|
938
950
|
}): TranspiledCallResult;
|
|
939
951
|
/** 调用 runTranspiled 导出(仅结果) */
|
|
940
952
|
declare function callTranspiledExport(exports: Record<string, unknown>, name: string, args: Abs[]): Abs;
|
|
@@ -949,7 +961,10 @@ declare function callTranspiledExport(exports: Record<string, unknown>, name: st
|
|
|
949
961
|
* 宿主重放不走此工厂,保持 D1 防御副本。
|
|
950
962
|
*
|
|
951
963
|
* `exports` 可传惰性 getter(互递归模块桥:导出表在桥创建后才赋值)。
|
|
964
|
+
*
|
|
965
|
+
* **不传 preferLocal**:跨模块 import 桥必须调用**导出值**(同名 re-export /
|
|
966
|
+
* CJS 合并不得被本地私有函数顶替);按名分析由调用方显式 preferLocal。
|
|
952
967
|
*/
|
|
953
968
|
declare function callTranspiledExportApply(exports: Record<string, unknown> | (() => Record<string, unknown>), name: string): (args: Abs[], thisVal?: Abs) => AbsApplyResult;
|
|
954
969
|
|
|
955
|
-
export { $tryDigestSoft as $, type Abs as A, orphanMayThrowEffects as B, type Confidence as C, popMayThrowFrame as D, ERROR_FAMILY as E, pushMayThrowFrame as F, recordMayThrow as G, resetEvalFallbackStats as H, runWithMayThrowSession as I, setMayThrowCollector as J, throwAbsToKinds as K, type LiteralValue as L, type MayThrowEffect as M, throwsKindCovered as N, withEvalBudgetOverride as O, type PrimName as P, type
|
|
970
|
+
export { $tryDigestSoft as $, type Abs as A, orphanMayThrowEffects as B, type Confidence as C, popMayThrowFrame as D, ERROR_FAMILY as E, pushMayThrowFrame as F, recordMayThrow as G, resetEvalFallbackStats as H, runWithMayThrowSession as I, setMayThrowCollector as J, throwAbsToKinds as K, type LiteralValue as L, type MayThrowEffect as M, throwsKindCovered as N, withEvalBudgetOverride as O, type PrimName as P, type RelSource as Q, type RunTranspiledOptions as R, type Shape as S, type Term as T, type HofSite as U, $assignRecord as V, $call as W, $callNamed as X, $recordBinding as Y, type AbsApplyNoThrow as Z, type AbsApplyNoThrowFn as _, type Pred as a, ne as a$, type AbsApplyResult as a0, type AbsApplyReturn as a1, type AbsFnImpl as a2, type AbsSigImpl as a3, type EvalAbsAssignRecord as a4, type EvalCallRecord as a5, type EvalFallback as a6, type EvalPosRecord as a7, type ImplicationOracle as a8, type LitValueResult as a9, eq as aA, evalExprAbs as aB, ge as aC, geNum as aD, getEvalCallCollector as aE, getFnImpl as aF, getImplicationOracle as aG, gt as aH, gtNum as aI, hostFnCtorFacet as aJ, implies as aK, isAbsApplyResult as aL, isAbsVal as aM, isBigPrim as aN, isCjsMainRun as aO, isExactLit as aP, isNumPrim as aQ, isStrPrim as aR, le as aS, leNum as aT, lit as aU, litValue as aV, lt as aW, ltNum as aX, makeAbsApplyResult as aY, markPureFn as aZ, namespaceAbsOf as a_, MAX_EVAL_CALL_DEPTH as aa, MAX_EVAL_TOTAL_CALLS as ab, TYPEOF_NAMES as ac, type TranspiledCallResult as ad, type TypeofName as ae, abs as af, absFunction as ag, absOnly as ah, absToString as ai, and as aj, anyAbs as ak, anyVar as al, app as am, assumeFinite as an, attachFnImpl as ao, bigintLit as ap, bindImports as aq, bindingsOf as ar, bool as as, boolLit as at, callTranspiledExport as au, callTranspiledExportApply as av, callTranspiledExportFull as aw, collectAbsExports as ax, confJoin as ay, emptyPhi as az, type Phi as b, negatePred as b0, never as b1, not as b2, noteEvalCallRecord as b3, noteEvalFallback as b4, num as b5, numLit as b6, numVar as b7, obj as b8, or as b9, substPred as bA, termEquals as bB, termToString as bC, tryRunTranspiled as bD, unknown as bE, v as bF, $nodoPos as bG, getPosCollector as bH, routeApplyThrows as bI, pFalse as ba, pTrue as bb, phiAnd as bc, predEquals as bd, predToString as be, predVars as bf, primToTypeof as bg, ptypeof as bh, pureFnNameOf as bi, relationFingerprint as bj, relationFn as bk, resetEvalCallBudget as bl, runTranspiled as bm, runTranspiledOptionsMemoKey as bn, setEvalAssignCollector as bo, setEvalBindingSink as bp, setEvalCallCollector as bq, setEvalFallbackCollector as br, setImplicationOracle as bs, setPosCollector as bt, shapeOfTerm as bu, shapeOnlyFn as bv, shapeToString as bw, simplifyTerm as bx, str as by, strLit as bz, type AbsModuleExports as c, type AstEnv as d, $tryMarkSoft as e, $tryReleaseSoft as f, type EvalFallbackStats as g, absLit as h, absNumLit as i, absStrLit as j, allAbsStr as k, clearPureCallMemo as l, clearPureMemo as m, enterEvalCallBudgetSession as n, errorTypeAbs as o, exitEvalCallBudgetSession as p, filterDeclaredThrows as q, filterGateThrows as r, filterIgnoredThrows as s, flushMayThrowEffects as t, formatThrowsAbs as u, getEvalCallBudgetState as v, getEvalFallbackStats as w, getMayThrowCollector as x, isThrowsIgnored as y, mayThrowEffectsToAbs as z };
|
package/package.json
CHANGED
|
File without changes
|