behavior-contracts 0.2.5 → 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-raw-abi-go.d.ts +45 -0
- package/dist/generator/emit-raw-abi-go.d.ts.map +1 -0
- package/dist/generator/emit-raw-abi-go.js +345 -0
- package/dist/generator/emit-raw-abi-go.js.map +1 -0
- package/dist/generator/emit-raw-abi-rust.d.ts +45 -0
- package/dist/generator/emit-raw-abi-rust.d.ts.map +1 -0
- package/dist/generator/emit-raw-abi-rust.js +380 -0
- package/dist/generator/emit-raw-abi-rust.js.map +1 -0
- 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-typed-go.d.ts +95 -2
- package/dist/generator/emit-straightline-typed-go.d.ts.map +1 -1
- package/dist/generator/emit-straightline-typed-go.js +31 -0
- package/dist/generator/emit-straightline-typed-go.js.map +1 -1
- package/dist/generator/emit-straightline-typed-rust.d.ts +98 -2
- package/dist/generator/emit-straightline-typed-rust.d.ts.map +1 -1
- package/dist/generator/emit-straightline-typed-rust.js +30 -0
- package/dist/generator/emit-straightline-typed-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/generator/index.d.ts +4 -2
- package/dist/generator/index.d.ts.map +1 -1
- package/dist/generator/index.js +11 -2
- package/dist/generator/index.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
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
|
/**
|
package/dist/primitives.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitives.js","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"primitives.js","sourceRoot":"","sources":["../src/primitives.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "behavior-contracts",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Language-agnostic runtime core for behavior contracts (dsl-contracts): validateEnvelope / evaluateExpression / renderTemplate / runPlan / canonical serialization. Single source of truth for the shared DSL runtime primitives.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|