behavior-contracts 0.2.6 → 0.3.0
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/expr-eval.d.ts +28 -0
- package/dist/expr-eval.d.ts.map +1 -1
- package/dist/expr-eval.js +150 -90
- package/dist/expr-eval.js.map +1 -1
- package/dist/generator/emit-straightline-go.d.ts.map +1 -1
- package/dist/generator/emit-straightline-go.js +63 -31
- package/dist/generator/emit-straightline-go.js.map +1 -1
- package/dist/generator/emit-straightline-php.d.ts.map +1 -1
- package/dist/generator/emit-straightline-php.js +13 -4
- package/dist/generator/emit-straightline-php.js.map +1 -1
- package/dist/generator/emit-straightline-python.d.ts.map +1 -1
- package/dist/generator/emit-straightline-python.js +14 -4
- package/dist/generator/emit-straightline-python.js.map +1 -1
- package/dist/generator/emit-straightline-rust.d.ts.map +1 -1
- package/dist/generator/emit-straightline-rust.js +111 -43
- package/dist/generator/emit-straightline-rust.js.map +1 -1
- package/dist/generator/emit-straightline-typescript.d.ts.map +1 -1
- package/dist/generator/emit-straightline-typescript.js +81 -45
- package/dist/generator/emit-straightline-typescript.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/primitives.d.ts +53 -62
- package/dist/primitives.d.ts.map +1 -1
- package/dist/primitives.js +85 -91
- package/dist/primitives.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit-straightline-typescript.js","sourceRoot":"","sources":["../../src/generator/emit-straightline-typescript.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"emit-straightline-typescript.js","sourceRoot":"","sources":["../../src/generator/emit-straightline-typescript.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -50,7 +50,7 @@ export { SemanticBehavior, behavior, compileBehaviors, catalogComponents, when,
|
|
|
50
50
|
export type { In, Recorded, BehaviorClass, CompileBehaviorsOptions, BehaviorEffect, AuthoringFailureCode, } from "./authoring.js";
|
|
51
51
|
export { decodeValue, deepEquals } from "./codec.js";
|
|
52
52
|
export * as codegenPrimitives from "./primitives.js";
|
|
53
|
-
export { mapWithConcurrency, unproducedValue, skipSingle, skipConnection, hydrateInto,
|
|
53
|
+
export { mapWithConcurrency, unproducedValue, skipSingle, skipConnection, hydrateInto, } from "./primitives.js";
|
|
54
54
|
export type { Expr } from "./primitives.js";
|
|
55
55
|
export { generateModule, registerEmitter, registeredLanguages, GeneratorFailure, fingerprintComponentGraph, FingerprintFailure, typescriptEmitter, pythonEmitter, typescriptStraightlineEmitter, rustStraightlineEmitter, phpStraightlineEmitter, pythonStraightlineEmitter, typescriptTypedEmitter, tsTypedMaterializer, assertStraightlineSupported, isStraightlineNode, buildTypePlan, deriveTypeRef, } from "./generator/index.js";
|
|
56
56
|
export type { GenerateOptions, GeneratedModule, EmitContext, EmitterPlugin, GeneratorFailureCode, StraightlineDialect, StraightlineOp, ComponentPlan, OpLiteral, TypePlan, TypeRef, TypeDecl, TypedMaterializer, } from "./generator/index.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,eAAO,MAAM,aAAa;;;;;;;;CAQhB,CAAC;AAEX,4EAA4E;AAC5E,eAAO,MAAM,qBAAqB,EAAG,KAAc,CAAC;AAGpD,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC/H,YAAY,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC1E,YAAY,EACV,iBAAiB,EACjB,MAAM,EACN,IAAI,EACJ,SAAS,EACT,WAAW,EACX,SAAS,EACT,UAAU,EACV,YAAY,EACZ,eAAe,GAChB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,YAAY,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG3D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAClE,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EACV,gBAAgB,EAChB,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,OAAO,EACP,OAAO,EACP,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,mBAAmB,GACpB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACxE,YAAY,EACV,uBAAuB,EACvB,+BAA+B,EAC/B,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,EACjB,IAAI,EACJ,MAAM,EACN,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,QAAQ,EACR,GAAG,EACH,GAAG,EACH,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,EAAE,EACF,QAAQ,EACR,aAAa,EACb,uBAAuB,EACvB,cAAc,EACd,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAQrD,OAAO,KAAK,iBAAiB,MAAM,iBAAiB,CAAC;AACrD,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,cAAc,EACd,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,eAAO,MAAM,aAAa;;;;;;;;CAQhB,CAAC;AAEX,4EAA4E;AAC5E,eAAO,MAAM,qBAAqB,EAAG,KAAc,CAAC;AAGpD,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC/H,YAAY,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC1E,YAAY,EACV,iBAAiB,EACjB,MAAM,EACN,IAAI,EACJ,SAAS,EACT,WAAW,EACX,SAAS,EACT,UAAU,EACV,YAAY,EACZ,eAAe,GAChB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9F,YAAY,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG3D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAClE,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EACV,gBAAgB,EAChB,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,OAAO,EACP,OAAO,EACP,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,mBAAmB,GACpB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACxE,YAAY,EACV,uBAAuB,EACvB,+BAA+B,EAC/B,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,EACjB,IAAI,EACJ,MAAM,EACN,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,QAAQ,EACR,GAAG,EACH,GAAG,EACH,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,EAAE,EACF,QAAQ,EACR,aAAa,EACb,uBAAuB,EACvB,cAAc,EACd,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAQrD,OAAO,KAAK,iBAAiB,MAAM,iBAAiB,CAAC;AACrD,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,cAAc,EACd,WAAW,GACZ,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAK5C,OAAO,EACL,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,yBAAyB,EACzB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,aAAa,EACb,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,eAAe,EACf,eAAe,EACf,WAAW,EACX,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,SAAS,EACT,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,iBAAiB,GAClB,MAAM,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -59,7 +59,7 @@ export { decodeValue, deepEquals } from "./codec.js";
|
|
|
59
59
|
// (authoring.ts の同名 IR ビルダ `add`/`concat`/… とは別物)。runPlan / bounded 並行 /
|
|
60
60
|
// skip・unproduced / hydration helper も同 namespace に含める。
|
|
61
61
|
export * as codegenPrimitives from "./primitives.js";
|
|
62
|
-
export { mapWithConcurrency, unproducedValue, skipSingle, skipConnection, hydrateInto,
|
|
62
|
+
export { mapWithConcurrency, unproducedValue, skipSingle, skipConnection, hydrateInto, } from "./primitives.js";
|
|
63
63
|
// ── generator(SCP Runtime Code Generation Layer — 共通 Generator, bc#13)─────
|
|
64
64
|
// 可搬 IR のみを入力とする DSL 非依存の多言語 codegen(scp-ir-architecture.md §7.2–§7.4)。
|
|
65
65
|
// 生成コードは既存 runtime-core API を呼ぶ薄い束ね(実行ロジックは生成しない)。
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,gEAAgE;AAChE,oEAAoE;AACpE,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,UAAU,EAAE,CAAC,EAAE,6DAA6D;IAC5E,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC,EAAE,8DAA8D;IAC5E,QAAQ,EAAE,CAAC,EAAE,2EAA2E;IACxF,KAAK,EAAE,CAAC,EAAE,uEAAuE;IACjF,EAAE,EAAE,CAAC,EAAE,mEAAmE;CAClE,CAAC;AAEX,4EAA4E;AAC5E,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAc,CAAC;AAKpD,+EAA+E;AAC/E,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG/H,+EAA+E;AAC/E,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhF,+EAA+E;AAC/E,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAa1E,+EAA+E;AAC/E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAG9F,+EAA+E;AAC/E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGlE,+EAA+E;AAC/E,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,+EAA+E;AAC/E,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAsB/E,wEAAwE;AACxE,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAOxE,iFAAiF;AACjF,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,EACjB,IAAI,EACJ,MAAM,EACN,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,QAAQ,EACR,GAAG,EACH,GAAG,EACH,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAUxB,8EAA8E;AAC9E,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAErD,gFAAgF;AAChF,kDAAkD;AAClD,kEAAkE;AAClE,4DAA4D;AAC5D,yEAAyE;AACzE,wDAAwD;AACxD,OAAO,KAAK,iBAAiB,MAAM,iBAAiB,CAAC;AACrD,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,cAAc,EACd,WAAW,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,gEAAgE;AAChE,oEAAoE;AACpE,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,UAAU,EAAE,CAAC,EAAE,6DAA6D;IAC5E,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC,EAAE,8DAA8D;IAC5E,QAAQ,EAAE,CAAC,EAAE,2EAA2E;IACxF,KAAK,EAAE,CAAC,EAAE,uEAAuE;IACjF,EAAE,EAAE,CAAC,EAAE,mEAAmE;CAClE,CAAC;AAEX,4EAA4E;AAC5E,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAc,CAAC;AAKpD,+EAA+E;AAC/E,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG/H,+EAA+E;AAC/E,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhF,+EAA+E;AAC/E,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAa1E,+EAA+E;AAC/E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAG9F,+EAA+E;AAC/E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGlE,+EAA+E;AAC/E,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,+EAA+E;AAC/E,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAsB/E,wEAAwE;AACxE,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAOxE,iFAAiF;AACjF,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,EACjB,IAAI,EACJ,MAAM,EACN,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,QAAQ,EACR,GAAG,EACH,GAAG,EACH,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAUxB,8EAA8E;AAC9E,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAErD,gFAAgF;AAChF,kDAAkD;AAClD,kEAAkE;AAClE,4DAA4D;AAC5D,yEAAyE;AACzE,wDAAwD;AACxD,OAAO,KAAK,iBAAiB,MAAM,iBAAiB,CAAC;AACrD,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,cAAc,EACd,WAAW,GACZ,MAAM,iBAAiB,CAAC;AAGzB,6EAA6E;AAC7E,wEAAwE;AACxE,mDAAmD;AACnD,OAAO,EACL,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,yBAAyB,EACzB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,aAAa,EACb,aAAa,GACd,MAAM,sBAAsB,CAAC"}
|
package/dist/primitives.d.ts
CHANGED
|
@@ -2,79 +2,70 @@
|
|
|
2
2
|
* primitives.ts — codegen が直呼びできる安定 primitive 公開面(bc#36 / typed-codegen.md §3.4)。
|
|
3
3
|
*
|
|
4
4
|
* これは **A0 = 公開面の確定**(emitter 生成ロジックは A1/#37)。生成コードが
|
|
5
|
-
* 「細粒度 primitive を呼ぶ」ための callable surface
|
|
5
|
+
* 「細粒度 primitive を呼ぶ」ための callable surface。
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* 短絡の保存: `and`/`or`/`cond`/`coalesce` は **未評価の IR ノード**(`Expr`)を引数に取り、
|
|
14
|
-
* 内部で `evaluate` が短絡する。値を先に評価して渡す API にすると短絡が壊れるため採らない。
|
|
7
|
+
* 最重要規律: **演算子意味論は再実装しない**、かつ **codegen は IR を出力しない**(bc no-ir
|
|
8
|
+
* invariant)。各 native primitive は被演算子を**評価済み Value**(短絡系は遅延 thunk)で受け、
|
|
9
|
+
* 意味論 SSoT の value-core(expr-eval.ts の arithCore/compareCore/makeObjCore/… — `evaluate` の
|
|
10
|
+
* 各アームと同一実装)へ委譲する。よって意味論(INT_OVERFLOW / PRECISION_LOSS / MOD_ZERO /
|
|
11
|
+
* NULL_REF / TYPE_MISMATCH / FORBIDDEN_KEY / 短絡 / code-point 順 等)は `evaluate` と完全一致
|
|
12
|
+
* (実装が一本なので発散不能)。生 IR の実行が要る経路(ir exec surface)は `evaluate` を直接使う。
|
|
15
13
|
*
|
|
16
14
|
* これに加えて runPlan / bounded 並行 / skip・unproduced / hydration helper を再エクスポート
|
|
17
15
|
* または薄く公開する(いずれも既存実装を SSoT として共有)。
|
|
18
16
|
*/
|
|
19
17
|
import { type Value, type Scope } from "./expr-eval.js";
|
|
20
18
|
import { type RelationKind } from "./plan.js";
|
|
21
|
-
/**
|
|
19
|
+
/** Expression IR ノード型(`ir` exec surface / evaluate が解釈する。native primitive は使わない)。 */
|
|
22
20
|
export type Expr = unknown;
|
|
23
|
-
/**
|
|
21
|
+
/** 遅延評価される被演算子(短絡 and/or/cond/coalesce 用)。 */
|
|
22
|
+
export type Thunk = () => Value;
|
|
23
|
+
/** 参照(native scope walk。中間 null は NULL_REF)。path は静的 string[]。 */
|
|
24
24
|
export declare function ref(path: string[], scope: Scope): Value;
|
|
25
|
-
/** null
|
|
25
|
+
/** null 安全参照(中間 null は null 伝播)。 */
|
|
26
26
|
export declare function refOpt(path: string[], scope: Scope): Value;
|
|
27
|
-
/** `{int:"..."}`
|
|
28
|
-
export declare function intLit(literal: string
|
|
29
|
-
/** `{float:n}`
|
|
30
|
-
export declare function floatLit(n: number
|
|
31
|
-
/**
|
|
32
|
-
export declare function
|
|
33
|
-
/**
|
|
34
|
-
export declare function
|
|
35
|
-
/**
|
|
36
|
-
export declare function
|
|
37
|
-
/**
|
|
38
|
-
export declare function
|
|
39
|
-
|
|
40
|
-
export declare function mul(a:
|
|
27
|
+
/** `{int:"..."}` リテラル。 */
|
|
28
|
+
export declare function intLit(literal: string): Value;
|
|
29
|
+
/** `{float:n}` リテラル。 */
|
|
30
|
+
export declare function floatLit(n: number): Value;
|
|
31
|
+
/** bare number リテラル(§2.3 分類)。 */
|
|
32
|
+
export declare function numberLit(n: number): Value;
|
|
33
|
+
/** object 構築(キー順・__proto__ は値評価前に FORBIDDEN_KEY)。値は遅延 thunk。 */
|
|
34
|
+
export declare function obj(entries: Array<[string, Thunk]>): Value;
|
|
35
|
+
/** array 構築(要素は評価済み Value、左→右順)。 */
|
|
36
|
+
export declare function arr(elems: Value[]): Value;
|
|
37
|
+
/** 加算/減算/乗算(int×int checked / float×float finite / 混在 TYPE_MISMATCH)。 */
|
|
38
|
+
export declare function add(a: Value, b: Value): Value;
|
|
39
|
+
export declare function sub(a: Value, b: Value): Value;
|
|
40
|
+
export declare function mul(a: Value, b: Value): Value;
|
|
41
41
|
/** 単項マイナス。 */
|
|
42
|
-
export declare function neg(a:
|
|
43
|
-
/** 除算(常に float
|
|
44
|
-
export declare function div(a:
|
|
45
|
-
/**
|
|
46
|
-
export declare function mod(a:
|
|
47
|
-
/** 文字列連結(
|
|
48
|
-
export declare function concat(parts:
|
|
49
|
-
/**
|
|
50
|
-
export declare function eq(a:
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
export declare function
|
|
55
|
-
|
|
56
|
-
export declare function
|
|
57
|
-
/**
|
|
58
|
-
export declare function
|
|
59
|
-
/**
|
|
60
|
-
export declare function
|
|
61
|
-
/**
|
|
62
|
-
export declare function
|
|
63
|
-
/**
|
|
64
|
-
export declare function
|
|
65
|
-
/**
|
|
66
|
-
export declare function
|
|
67
|
-
/**
|
|
68
|
-
export declare function
|
|
69
|
-
/** 条件(strict bool。採用側のみ評価)。then/else は未評価 IR で渡す。 */
|
|
70
|
-
export declare function cond(c: Expr, then: Expr, els: Expr, scope: Scope): Value;
|
|
71
|
-
/** 配列長(配列のみ。string length は v1 に無い)。 */
|
|
72
|
-
export declare function len(a: Expr, scope: Scope): Value;
|
|
73
|
-
/**
|
|
74
|
-
* 生の Expression IR を直接評価する汎用 primitive(emitter が単一キーラッパを介さず
|
|
75
|
-
* 任意の式ノードを評価したい場合の逃げ道。意味論は上記個別 primitive と同一 SSoT)。
|
|
76
|
-
*/
|
|
77
|
-
export declare function evalExpr(node: Expr, scope?: Scope): Value;
|
|
42
|
+
export declare function neg(a: Value): Value;
|
|
43
|
+
/** 除算(常に float)。 */
|
|
44
|
+
export declare function div(a: Value, b: Value): Value;
|
|
45
|
+
/** 剰余。 */
|
|
46
|
+
export declare function mod(a: Value, b: Value): Value;
|
|
47
|
+
/** 文字列連結(string のみ。要素は評価済み Value)。 */
|
|
48
|
+
export declare function concat(parts: Value[]): Value;
|
|
49
|
+
/** 等価/非等価。 */
|
|
50
|
+
export declare function eq(a: Value, b: Value): Value;
|
|
51
|
+
export declare function ne(a: Value, b: Value): Value;
|
|
52
|
+
/** 比較(同一型 int/float/string、string は code-point 順)。 */
|
|
53
|
+
export declare function lt(a: Value, b: Value): Value;
|
|
54
|
+
export declare function le(a: Value, b: Value): Value;
|
|
55
|
+
export declare function gt(a: Value, b: Value): Value;
|
|
56
|
+
export declare function ge(a: Value, b: Value): Value;
|
|
57
|
+
/** 論理積(短絡: 左辺 false なら右辺 thunk は呼ばない)。 */
|
|
58
|
+
export declare function and(a: Thunk, b: Thunk): Value;
|
|
59
|
+
/** 論理和(短絡: 左辺 true なら右辺 thunk は呼ばない)。 */
|
|
60
|
+
export declare function or(a: Thunk, b: Thunk): Value;
|
|
61
|
+
/** 論理否定(strict bool)。被演算子は評価済み。 */
|
|
62
|
+
export declare function not(a: Value): Value;
|
|
63
|
+
/** null 合体(左が null のときだけ右 thunk を評価)。 */
|
|
64
|
+
export declare function coalesce(a: Thunk, b: Thunk): Value;
|
|
65
|
+
/** 条件(strict bool。採用側 thunk のみ評価)。 */
|
|
66
|
+
export declare function cond(c: Thunk, then: Thunk, els: Thunk): Value;
|
|
67
|
+
/** 配列長(配列のみ)。 */
|
|
68
|
+
export declare function len(a: Value): Value;
|
|
78
69
|
/**
|
|
79
70
|
* mapWithConcurrency — 入力順を保存し、in-flight を `concurrency` で上限する bounded 並行 map。
|
|
80
71
|
* execution-plan.md §4 の determinism 規律(output[i]=worker(items[i]) / 完了順非依存 /
|
package/dist/primitives.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"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"}
|
package/dist/primitives.js
CHANGED
|
@@ -2,130 +2,124 @@
|
|
|
2
2
|
* primitives.ts — codegen が直呼びできる安定 primitive 公開面(bc#36 / typed-codegen.md §3.4)。
|
|
3
3
|
*
|
|
4
4
|
* これは **A0 = 公開面の確定**(emitter 生成ロジックは A1/#37)。生成コードが
|
|
5
|
-
* 「細粒度 primitive を呼ぶ」ための callable surface
|
|
5
|
+
* 「細粒度 primitive を呼ぶ」ための callable surface。
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* 短絡の保存: `and`/`or`/`cond`/`coalesce` は **未評価の IR ノード**(`Expr`)を引数に取り、
|
|
14
|
-
* 内部で `evaluate` が短絡する。値を先に評価して渡す API にすると短絡が壊れるため採らない。
|
|
7
|
+
* 最重要規律: **演算子意味論は再実装しない**、かつ **codegen は IR を出力しない**(bc no-ir
|
|
8
|
+
* invariant)。各 native primitive は被演算子を**評価済み Value**(短絡系は遅延 thunk)で受け、
|
|
9
|
+
* 意味論 SSoT の value-core(expr-eval.ts の arithCore/compareCore/makeObjCore/… — `evaluate` の
|
|
10
|
+
* 各アームと同一実装)へ委譲する。よって意味論(INT_OVERFLOW / PRECISION_LOSS / MOD_ZERO /
|
|
11
|
+
* NULL_REF / TYPE_MISMATCH / FORBIDDEN_KEY / 短絡 / code-point 順 等)は `evaluate` と完全一致
|
|
12
|
+
* (実装が一本なので発散不能)。生 IR の実行が要る経路(ir exec surface)は `evaluate` を直接使う。
|
|
15
13
|
*
|
|
16
14
|
* これに加えて runPlan / bounded 並行 / skip・unproduced / hydration helper を再エクスポート
|
|
17
15
|
* または薄く公開する(いずれも既存実装を SSoT として共有)。
|
|
18
16
|
*/
|
|
19
|
-
import {
|
|
17
|
+
import { arithCore, compareCore, concatCore, divCore, eqNeCore, lenCore, makeObjCore, modCore, negCore, numberLitCore, intLitCore, floatLitCore, refCore, requireBoolCore, } from "./expr-eval.js";
|
|
20
18
|
import {} from "./plan.js";
|
|
21
|
-
// ── (a)
|
|
22
|
-
//
|
|
23
|
-
/**
|
|
19
|
+
// ── (a) 演算子/構築/リテラルの native callable surface(bc no-ir invariant)──────
|
|
20
|
+
// 被演算子は評価済み Value(短絡系は Thunk)。IR も evaluate 委譲も経由せず value-core を直呼び。
|
|
21
|
+
/** 参照(native scope walk。中間 null は NULL_REF)。path は静的 string[]。 */
|
|
24
22
|
export function ref(path, scope) {
|
|
25
|
-
return
|
|
23
|
+
return refCore(path, scope, false);
|
|
26
24
|
}
|
|
27
|
-
/** null
|
|
25
|
+
/** null 安全参照(中間 null は null 伝播)。 */
|
|
28
26
|
export function refOpt(path, scope) {
|
|
29
|
-
return
|
|
27
|
+
return refCore(path, scope, true);
|
|
30
28
|
}
|
|
31
|
-
/** `{int:"..."}`
|
|
32
|
-
export function intLit(literal
|
|
33
|
-
return
|
|
29
|
+
/** `{int:"..."}` リテラル。 */
|
|
30
|
+
export function intLit(literal) {
|
|
31
|
+
return intLitCore(literal);
|
|
34
32
|
}
|
|
35
|
-
/** `{float:n}`
|
|
36
|
-
export function floatLit(n
|
|
37
|
-
return
|
|
33
|
+
/** `{float:n}` リテラル。 */
|
|
34
|
+
export function floatLit(n) {
|
|
35
|
+
return floatLitCore(n);
|
|
38
36
|
}
|
|
39
|
-
/**
|
|
40
|
-
export function
|
|
41
|
-
return
|
|
37
|
+
/** bare number リテラル(§2.3 分類)。 */
|
|
38
|
+
export function numberLit(n) {
|
|
39
|
+
return numberLitCore(n);
|
|
42
40
|
}
|
|
43
|
-
/**
|
|
44
|
-
export function
|
|
45
|
-
return
|
|
41
|
+
/** object 構築(キー順・__proto__ は値評価前に FORBIDDEN_KEY)。値は遅延 thunk。 */
|
|
42
|
+
export function obj(entries) {
|
|
43
|
+
return makeObjCore(entries);
|
|
46
44
|
}
|
|
47
|
-
/**
|
|
48
|
-
export function
|
|
49
|
-
return
|
|
45
|
+
/** array 構築(要素は評価済み Value、左→右順)。 */
|
|
46
|
+
export function arr(elems) {
|
|
47
|
+
return elems;
|
|
50
48
|
}
|
|
51
|
-
/**
|
|
52
|
-
export function
|
|
53
|
-
return
|
|
49
|
+
/** 加算/減算/乗算(int×int checked / float×float finite / 混在 TYPE_MISMATCH)。 */
|
|
50
|
+
export function add(a, b) {
|
|
51
|
+
return arithCore("add", a, b);
|
|
54
52
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
return evaluate({ mul: [a, b] }, scope);
|
|
53
|
+
export function sub(a, b) {
|
|
54
|
+
return arithCore("sub", a, b);
|
|
58
55
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
return evaluate({ neg: [a] }, scope);
|
|
56
|
+
export function mul(a, b) {
|
|
57
|
+
return arithCore("mul", a, b);
|
|
62
58
|
}
|
|
63
|
-
/**
|
|
64
|
-
export function
|
|
65
|
-
return
|
|
59
|
+
/** 単項マイナス。 */
|
|
60
|
+
export function neg(a) {
|
|
61
|
+
return negCore(a);
|
|
66
62
|
}
|
|
67
|
-
/**
|
|
68
|
-
export function
|
|
69
|
-
return
|
|
63
|
+
/** 除算(常に float)。 */
|
|
64
|
+
export function div(a, b) {
|
|
65
|
+
return divCore(a, b);
|
|
70
66
|
}
|
|
71
|
-
/**
|
|
72
|
-
export function
|
|
73
|
-
return
|
|
67
|
+
/** 剰余。 */
|
|
68
|
+
export function mod(a, b) {
|
|
69
|
+
return modCore(a, b);
|
|
74
70
|
}
|
|
75
|
-
/**
|
|
76
|
-
export function
|
|
77
|
-
return
|
|
71
|
+
/** 文字列連結(string のみ。要素は評価済み Value)。 */
|
|
72
|
+
export function concat(parts) {
|
|
73
|
+
return concatCore(parts);
|
|
78
74
|
}
|
|
79
|
-
/**
|
|
80
|
-
export function
|
|
81
|
-
return
|
|
75
|
+
/** 等価/非等価。 */
|
|
76
|
+
export function eq(a, b) {
|
|
77
|
+
return eqNeCore("eq", a, b);
|
|
82
78
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
return evaluate({ lt: [a, b] }, scope);
|
|
79
|
+
export function ne(a, b) {
|
|
80
|
+
return eqNeCore("ne", a, b);
|
|
86
81
|
}
|
|
87
|
-
/**
|
|
88
|
-
export function
|
|
89
|
-
return
|
|
82
|
+
/** 比較(同一型 int/float/string、string は code-point 順)。 */
|
|
83
|
+
export function lt(a, b) {
|
|
84
|
+
return compareCore("lt", a, b);
|
|
90
85
|
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
return evaluate({ gt: [a, b] }, scope);
|
|
86
|
+
export function le(a, b) {
|
|
87
|
+
return compareCore("le", a, b);
|
|
94
88
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
return evaluate({ ge: [a, b] }, scope);
|
|
89
|
+
export function gt(a, b) {
|
|
90
|
+
return compareCore("gt", a, b);
|
|
98
91
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
return evaluate({ and: [a, b] }, scope);
|
|
92
|
+
export function ge(a, b) {
|
|
93
|
+
return compareCore("ge", a, b);
|
|
102
94
|
}
|
|
103
|
-
/**
|
|
104
|
-
export function
|
|
105
|
-
|
|
95
|
+
/** 論理積(短絡: 左辺 false なら右辺 thunk は呼ばない)。 */
|
|
96
|
+
export function and(a, b) {
|
|
97
|
+
if (!requireBoolCore(a(), "and"))
|
|
98
|
+
return false;
|
|
99
|
+
return requireBoolCore(b(), "and");
|
|
106
100
|
}
|
|
107
|
-
/**
|
|
108
|
-
export function
|
|
109
|
-
|
|
101
|
+
/** 論理和(短絡: 左辺 true なら右辺 thunk は呼ばない)。 */
|
|
102
|
+
export function or(a, b) {
|
|
103
|
+
if (requireBoolCore(a(), "or"))
|
|
104
|
+
return true;
|
|
105
|
+
return requireBoolCore(b(), "or");
|
|
110
106
|
}
|
|
111
|
-
/**
|
|
112
|
-
export function
|
|
113
|
-
return
|
|
107
|
+
/** 論理否定(strict bool)。被演算子は評価済み。 */
|
|
108
|
+
export function not(a) {
|
|
109
|
+
return !requireBoolCore(a, "not");
|
|
114
110
|
}
|
|
115
|
-
/**
|
|
116
|
-
export function
|
|
117
|
-
|
|
111
|
+
/** null 合体(左が null のときだけ右 thunk を評価)。 */
|
|
112
|
+
export function coalesce(a, b) {
|
|
113
|
+
const av = a();
|
|
114
|
+
return av === null ? b() : av;
|
|
118
115
|
}
|
|
119
|
-
/**
|
|
120
|
-
export function
|
|
121
|
-
return
|
|
116
|
+
/** 条件(strict bool。採用側 thunk のみ評価)。 */
|
|
117
|
+
export function cond(c, then, els) {
|
|
118
|
+
return requireBoolCore(c(), "cond") ? then() : els();
|
|
122
119
|
}
|
|
123
|
-
/**
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
*/
|
|
127
|
-
export function evalExpr(node, scope = {}) {
|
|
128
|
-
return evaluate(node, scope);
|
|
120
|
+
/** 配列長(配列のみ)。 */
|
|
121
|
+
export function len(a) {
|
|
122
|
+
return lenCore(a);
|
|
129
123
|
}
|
|
130
124
|
// ── (c) bounded 並行プリミティブ(順序保存)─────────────────────────────────────
|
|
131
125
|
/**
|