runmat 0.5.2-dev.5 → 0.5.2-dev.6

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.
Files changed (59) hide show
  1. package/artifacts/stdlib.snapshot +0 -0
  2. package/dist/generated/builtin-examples-catalog.d.ts.map +1 -1
  3. package/dist/generated/builtin-examples-catalog.js +1 -1
  4. package/dist/generated/builtin-examples-catalog.js.map +1 -1
  5. package/dist/generated/builtins/butter.d.ts +4 -0
  6. package/dist/generated/builtins/butter.d.ts.map +1 -0
  7. package/dist/generated/builtins/butter.js +112 -0
  8. package/dist/generated/builtins/butter.js.map +1 -0
  9. package/dist/generated/builtins/dcgain.d.ts +4 -0
  10. package/dist/generated/builtins/dcgain.d.ts.map +1 -0
  11. package/dist/generated/builtins/dcgain.js +96 -0
  12. package/dist/generated/builtins/dcgain.js.map +1 -0
  13. package/dist/generated/builtins/feedback.d.ts +4 -0
  14. package/dist/generated/builtins/feedback.d.ts.map +1 -0
  15. package/dist/generated/builtins/feedback.js +114 -0
  16. package/dist/generated/builtins/feedback.js.map +1 -0
  17. package/dist/generated/builtins/imhist.d.ts +4 -0
  18. package/dist/generated/builtins/imhist.d.ts.map +1 -0
  19. package/dist/generated/builtins/imhist.js +123 -0
  20. package/dist/generated/builtins/imhist.js.map +1 -0
  21. package/dist/generated/builtins/isstable.d.ts +4 -0
  22. package/dist/generated/builtins/isstable.d.ts.map +1 -0
  23. package/dist/generated/builtins/isstable.js +96 -0
  24. package/dist/generated/builtins/isstable.js.map +1 -0
  25. package/dist/generated/builtins/pole.d.ts +4 -0
  26. package/dist/generated/builtins/pole.d.ts.map +1 -0
  27. package/dist/generated/builtins/pole.js +96 -0
  28. package/dist/generated/builtins/pole.js.map +1 -0
  29. package/dist/generated/builtins/rref.d.ts +4 -0
  30. package/dist/generated/builtins/rref.d.ts.map +1 -0
  31. package/dist/generated/builtins/rref.js +112 -0
  32. package/dist/generated/builtins/rref.js.map +1 -0
  33. package/dist/generated/builtins/run.d.ts +4 -0
  34. package/dist/generated/builtins/run.d.ts.map +1 -0
  35. package/dist/generated/builtins/run.js +118 -0
  36. package/dist/generated/builtins/run.js.map +1 -0
  37. package/dist/generated/builtins/step.d.ts.map +1 -1
  38. package/dist/generated/builtins/step.js +14 -3
  39. package/dist/generated/builtins/step.js.map +1 -1
  40. package/dist/generated/builtins/stepinfo.d.ts +4 -0
  41. package/dist/generated/builtins/stepinfo.d.ts.map +1 -0
  42. package/dist/generated/builtins/stepinfo.js +111 -0
  43. package/dist/generated/builtins/stepinfo.js.map +1 -0
  44. package/dist/generated/builtins/tf.d.ts.map +1 -1
  45. package/dist/generated/builtins/tf.js +41 -9
  46. package/dist/generated/builtins/tf.js.map +1 -1
  47. package/dist/generated/builtins-manifest.d.ts.map +1 -1
  48. package/dist/generated/builtins-manifest.js +195 -4
  49. package/dist/generated/builtins-manifest.js.map +1 -1
  50. package/dist/lsp/runmat_lsp.d.ts +3 -3
  51. package/dist/lsp/runmat_lsp.js +7 -7
  52. package/dist/lsp/runmat_lsp_bg.wasm +0 -0
  53. package/dist/lsp/runmat_lsp_bg.wasm.d.ts +3 -3
  54. package/dist/pkg-web/runmat_wasm_web.d.ts +4 -4
  55. package/dist/pkg-web/runmat_wasm_web.js +10 -10
  56. package/dist/pkg-web/runmat_wasm_web_bg.wasm +0 -0
  57. package/dist/pkg-web/runmat_wasm_web_bg.wasm.d.ts +4 -4
  58. package/dist/runtime/stdlib.snapshot +0 -0
  59. package/package.json +2 -2
@@ -0,0 +1,4 @@
1
+ import type { BuiltinDoc } from "../../builtins.js";
2
+ declare const builtinDoc: BuiltinDoc;
3
+ export default builtinDoc;
4
+ //# sourceMappingURL=butter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"butter.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/butter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UA2GjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,112 @@
1
+ // @generated by scripts/generate-builtins.cjs
2
+ // Do not edit by hand.
3
+ const builtinDoc = {
4
+ "title": "butter",
5
+ "category": "math/signal",
6
+ "keywords": [
7
+ "butter",
8
+ "Butterworth",
9
+ "IIR",
10
+ "lowpass",
11
+ "highpass",
12
+ "bandpass",
13
+ "bandstop",
14
+ "signal processing"
15
+ ],
16
+ "summary": "Design Butterworth IIR filters.",
17
+ "references": [
18
+ "title: \"MATLAB butter documentation\""
19
+ ],
20
+ "gpu_support": {
21
+ "elementwise": false,
22
+ "reduction": false,
23
+ "precisions": [
24
+ "f64"
25
+ ],
26
+ "broadcasting": "none",
27
+ "notes": "Filter design is host-side coefficient generation. The resulting coefficients can be passed to `filter`, which uses the provider `iir_filter` hook for real gpuArray signals when available."
28
+ },
29
+ "fusion": {
30
+ "elementwise": false,
31
+ "reduction": false,
32
+ "max_inputs": 4,
33
+ "constants": "inline"
34
+ },
35
+ "requires_feature": null,
36
+ "tested": {
37
+ "unit": "builtins::math::signal::butter::tests",
38
+ "integration": "bytecode::compile::tests::compile_interprets_butter_filter_workflow"
39
+ },
40
+ "description": "`butter(n, Wn)` designs an order-`n` Butterworth filter. Digital designs use MATLAB's normalized convention where `Wn = 1` is Nyquist. Scalar `Wn` produces a lowpass filter by default; a two-element `Wn` produces a bandpass filter by default. Add an `ftype` string for `low`, `high`, `bandpass`, or `stop`, and add `'s'` for analog transfer functions.",
41
+ "behaviors": [
42
+ "`b = butter(n, Wn)` returns numerator coefficients as a row vector.",
43
+ "`[b, a] = butter(...)` returns numerator and denominator coefficient row vectors suitable for `filter(b, a, x)` in digital mode.",
44
+ "`[z, p, k] = butter(...)` returns zero-pole-gain form.",
45
+ "`[A, B, C, D] = butter(...)` returns a controllable-canonical state-space realization.",
46
+ "Digital cutoff frequencies must be finite, greater than 0, and less than 1. Analog cutoff frequencies must be finite and greater than 0.",
47
+ "Bandpass and bandstop designs require a strictly increasing two-element `Wn` vector."
48
+ ],
49
+ "examples": [
50
+ {
51
+ "description": "Low-pass filtering a noisy signal",
52
+ "input": "fs = 1000;\nt = (0:999) / fs;\nx = sin(2*pi*25*t) + 0.2*sin(2*pi*200*t);\n[b, a] = butter(4, 80/(fs/2), 'low');\ny = filter(b, a, x);",
53
+ "output": "y contains the low-pass filtered signal."
54
+ },
55
+ {
56
+ "description": "High-pass filter coefficients",
57
+ "input": "[b, a] = butter(2, 0.25, 'high')",
58
+ "output": "b and a are row-vector IIR coefficients."
59
+ },
60
+ {
61
+ "description": "Band-pass filter coefficients",
62
+ "input": "[b, a] = butter(3, [0.2 0.4], 'bandpass')",
63
+ "output": "b and a each contain 7 coefficients."
64
+ },
65
+ {
66
+ "description": "Analog low-pass prototype",
67
+ "input": "[b, a] = butter(1, 2, 's')",
68
+ "output": "b = [0 2]\na = [1 2]"
69
+ }
70
+ ],
71
+ "faqs": [
72
+ {
73
+ "question": "What does `Wn` mean for digital filters?",
74
+ "answer": "RunMat follows MATLAB's normalized digital convention: `Wn = 1` is the Nyquist frequency, so a 600 Hz low-pass filter at a 4800 Hz sample rate uses `butter(n, 600/(4800/2))`."
75
+ },
76
+ {
77
+ "question": "Can I use the result directly with `filter`?",
78
+ "answer": "Yes. Digital `[b, a]` outputs are ordinary row vectors and can be passed directly to `filter(b, a, x)`."
79
+ },
80
+ {
81
+ "question": "Does `butter` execute on the GPU?",
82
+ "answer": "No. It generates small coefficient arrays on the host. GPU acceleration applies when those coefficients are used by `filter` with a real gpuArray signal and a provider that implements `iir_filter`."
83
+ }
84
+ ],
85
+ "links": [
86
+ {
87
+ "label": "filter",
88
+ "url": "./filter"
89
+ },
90
+ {
91
+ "label": "conv",
92
+ "url": "./conv"
93
+ },
94
+ {
95
+ "label": "fft",
96
+ "url": "./fft"
97
+ }
98
+ ],
99
+ "source": {
100
+ "label": "`crates/runmat-runtime/src/builtins/math/signal/butter.rs`",
101
+ "url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/math/signal/butter.rs"
102
+ },
103
+ "key": "butter",
104
+ "slug": "butter",
105
+ "aliases": [],
106
+ "categoryPath": [
107
+ "math",
108
+ "signal"
109
+ ]
110
+ };
111
+ export default builtinDoc;
112
+ //# sourceMappingURL=butter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"butter.js","sourceRoot":"","sources":["../../../src/generated/builtins/butter.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,QAAQ;IACjB,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE;QACV,QAAQ;QACR,aAAa;QACb,KAAK;QACL,SAAS;QACT,UAAU;QACV,UAAU;QACV,UAAU;QACV,mBAAmB;KACpB;IACD,SAAS,EAAE,iCAAiC;IAC5C,YAAY,EAAE;QACZ,wCAAwC;KACzC;IACD,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE;YACZ,KAAK;SACN;QACD,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,8LAA8L;KACxM;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,QAAQ;KACtB;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,uCAAuC;QAC/C,aAAa,EAAE,qEAAqE;KACrF;IACD,aAAa,EAAE,iWAAiW;IAChX,WAAW,EAAE;QACX,qEAAqE;QACrE,kIAAkI;QAClI,wDAAwD;QACxD,wFAAwF;QACxF,0IAA0I;QAC1I,sFAAsF;KACvF;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,mCAAmC;YAClD,OAAO,EAAE,uIAAuI;YAChJ,QAAQ,EAAE,0CAA0C;SACrD;QACD;YACE,aAAa,EAAE,+BAA+B;YAC9C,OAAO,EAAE,kCAAkC;YAC3C,QAAQ,EAAE,0CAA0C;SACrD;QACD;YACE,aAAa,EAAE,+BAA+B;YAC9C,OAAO,EAAE,2CAA2C;YACpD,QAAQ,EAAE,sCAAsC;SACjD;QACD;YACE,aAAa,EAAE,2BAA2B;YAC1C,OAAO,EAAE,4BAA4B;YACrC,QAAQ,EAAE,sBAAsB;SACjC;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,0CAA0C;YACtD,QAAQ,EAAE,gLAAgL;SAC3L;QACD;YACE,UAAU,EAAE,8CAA8C;YAC1D,QAAQ,EAAE,yGAAyG;SACpH;QACD;YACE,UAAU,EAAE,mCAAmC;YAC/C,QAAQ,EAAE,uMAAuM;SAClN;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,UAAU;SAClB;QACD;YACE,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,QAAQ;SAChB;QACD;YACE,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,OAAO;SACf;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,4DAA4D;QACrE,KAAK,EAAE,yGAAyG;KACjH;IACD,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,MAAM;QACN,QAAQ;KACT;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { BuiltinDoc } from "../../builtins.js";
2
+ declare const builtinDoc: BuiltinDoc;
3
+ export default builtinDoc;
4
+ //# sourceMappingURL=dcgain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dcgain.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/dcgain.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UA2FjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,96 @@
1
+ // @generated by scripts/generate-builtins.cjs
2
+ // Do not edit by hand.
3
+ const builtinDoc = {
4
+ "title": "dcgain",
5
+ "category": "control",
6
+ "keywords": [
7
+ "dcgain",
8
+ "steady state",
9
+ "control system",
10
+ "transfer function",
11
+ "tf"
12
+ ],
13
+ "summary": "Evaluate steady-state gain of SISO transfer-function models.",
14
+ "references": [
15
+ "title: \"MATLAB dcgain documentation\""
16
+ ],
17
+ "gpu_support": {
18
+ "elementwise": false,
19
+ "reduction": false,
20
+ "precisions": [],
21
+ "broadcasting": "none",
22
+ "notes": "`dcgain` evaluates host-side transfer-function metadata."
23
+ },
24
+ "fusion": {
25
+ "elementwise": false,
26
+ "reduction": false,
27
+ "max_inputs": 0,
28
+ "constants": "inline",
29
+ "notes": "`dcgain` is scalar model analysis and is not fused."
30
+ },
31
+ "requires_feature": null,
32
+ "tested": {
33
+ "unit": "builtins::control::dcgain::tests",
34
+ "integration": "crates/runmat-vm/tests/control.rs"
35
+ },
36
+ "description": "`dcgain(sys)` evaluates a SISO transfer function at `s = 0` for continuous-time models or `z = 1` for discrete-time models.",
37
+ "behaviors": [
38
+ "Supports SISO `tf` objects.",
39
+ "Returns a real scalar for real-valued gains and a complex scalar for complex-valued gains.",
40
+ "Continuous-time models are evaluated at zero frequency.",
41
+ "Discrete-time models are evaluated at `z = 1`."
42
+ ],
43
+ "examples": [
44
+ {
45
+ "description": "Continuous-time DC gain",
46
+ "input": "H = tf(2, [1 3]);\ndcgain(H)",
47
+ "output": "ans = 0.6667"
48
+ }
49
+ ],
50
+ "faqs": [
51
+ {
52
+ "question": "Does `dcgain` simulate a step response?",
53
+ "answer": "No. It evaluates the transfer-function polynomials directly at the steady-state point."
54
+ }
55
+ ],
56
+ "links": [
57
+ {
58
+ "label": "tf",
59
+ "url": "./tf"
60
+ },
61
+ {
62
+ "label": "stepinfo",
63
+ "url": "./stepinfo"
64
+ }
65
+ ],
66
+ "source": {
67
+ "label": "`crates/runmat-runtime/src/builtins/control/dcgain.rs`",
68
+ "url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/control/dcgain.rs"
69
+ },
70
+ "syntax": {
71
+ "example": {
72
+ "description": "Supported form",
73
+ "input": "gain = dcgain(sys)",
74
+ "output": "gain is a scalar."
75
+ },
76
+ "points": [
77
+ "`sys` must be a SISO `tf` object."
78
+ ]
79
+ },
80
+ "validation": {
81
+ "summary": "`dcgain` validates the input model and evaluates numerator and denominator polynomials at the steady-state point. Tests cover real continuous-time gains and VM integration.",
82
+ "implementation": {
83
+ "label": "`crates/runmat-runtime/src/builtins/control/dcgain.rs`",
84
+ "url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/control/dcgain.rs"
85
+ }
86
+ },
87
+ "gpu_residency": "`dcgain` returns a host scalar.",
88
+ "key": "dcgain",
89
+ "slug": "dcgain",
90
+ "aliases": [],
91
+ "categoryPath": [
92
+ "control"
93
+ ]
94
+ };
95
+ export default builtinDoc;
96
+ //# sourceMappingURL=dcgain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dcgain.js","sourceRoot":"","sources":["../../../src/generated/builtins/dcgain.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,QAAQ;IACjB,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE;QACV,QAAQ;QACR,cAAc;QACd,gBAAgB;QAChB,mBAAmB;QACnB,IAAI;KACL;IACD,SAAS,EAAE,8DAA8D;IACzE,YAAY,EAAE;QACZ,wCAAwC;KACzC;IACD,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,EAAE;QAChB,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,0DAA0D;KACpE;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,QAAQ;QACrB,OAAO,EAAE,qDAAqD;KAC/D;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,kCAAkC;QAC1C,aAAa,EAAE,mCAAmC;KACnD;IACD,aAAa,EAAE,6HAA6H;IAC5I,WAAW,EAAE;QACX,6BAA6B;QAC7B,4FAA4F;QAC5F,yDAAyD;QACzD,gDAAgD;KACjD;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,yBAAyB;YACxC,OAAO,EAAE,8BAA8B;YACvC,QAAQ,EAAE,cAAc;SACzB;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,yCAAyC;YACrD,QAAQ,EAAE,wFAAwF;SACnG;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,MAAM;SACd;QACD;YACE,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,YAAY;SACpB;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,wDAAwD;QACjE,KAAK,EAAE,qGAAqG;KAC7G;IACD,QAAQ,EAAE;QACR,SAAS,EAAE;YACT,aAAa,EAAE,gBAAgB;YAC/B,OAAO,EAAE,oBAAoB;YAC7B,QAAQ,EAAE,mBAAmB;SAC9B;QACD,QAAQ,EAAE;YACR,mCAAmC;SACpC;KACF;IACD,YAAY,EAAE;QACZ,SAAS,EAAE,8KAA8K;QACzL,gBAAgB,EAAE;YAChB,OAAO,EAAE,wDAAwD;YACjE,KAAK,EAAE,qGAAqG;SAC7G;KACF;IACD,eAAe,EAAE,iCAAiC;IAClD,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,SAAS;KACV;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { BuiltinDoc } from "../../builtins.js";
2
+ declare const builtinDoc: BuiltinDoc;
3
+ export default builtinDoc;
4
+ //# sourceMappingURL=feedback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/feedback.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UA6GjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,114 @@
1
+ // @generated by scripts/generate-builtins.cjs
2
+ // Do not edit by hand.
3
+ const builtinDoc = {
4
+ "title": "feedback",
5
+ "category": "control",
6
+ "keywords": [
7
+ "feedback",
8
+ "closed loop",
9
+ "control system",
10
+ "transfer function",
11
+ "tf"
12
+ ],
13
+ "summary": "Form SISO feedback interconnections for transfer-function models.",
14
+ "references": [
15
+ "title: \"MATLAB feedback documentation\""
16
+ ],
17
+ "gpu_support": {
18
+ "elementwise": false,
19
+ "reduction": false,
20
+ "precisions": [],
21
+ "broadcasting": "none",
22
+ "notes": "`feedback` combines host-side transfer-function metadata. GPU-resident coefficient inputs are gathered when the source `tf` object is constructed."
23
+ },
24
+ "fusion": {
25
+ "elementwise": false,
26
+ "reduction": false,
27
+ "max_inputs": 0,
28
+ "constants": "inline",
29
+ "notes": "`feedback` constructs a new model object and terminates numeric fusion chains."
30
+ },
31
+ "requires_feature": null,
32
+ "tested": {
33
+ "unit": "builtins::control::feedback::tests",
34
+ "integration": "crates/runmat-vm/tests/control.rs"
35
+ },
36
+ "description": "`feedback(sys1, sys2)` returns the closed-loop SISO transfer function for negative feedback. `sys2` may be another compatible `tf` object or a scalar gain.",
37
+ "behaviors": [
38
+ "Supports real or complex SISO `tf` objects represented by numerator and denominator coefficient vectors.",
39
+ "`feedback(sys1)` uses unity negative feedback.",
40
+ "`feedback(sys1, sys2)` computes `sys1/(1 + sys1*sys2)`.",
41
+ "`feedback(sys1, sys2, +1)` computes positive feedback as `sys1/(1 - sys1*sys2)`.",
42
+ "Scalar gains are promoted to constant transfer functions using the other operand's variable and sample time.",
43
+ "Input systems must have compatible sample times.",
44
+ "Nonzero input or output delays are rejected with a clear unsupported-model diagnostic."
45
+ ],
46
+ "examples": [
47
+ {
48
+ "description": "Unity negative feedback",
49
+ "input": "s = tf('s');\nG = 2/(s + 3);\nT = feedback(G, 1);\nT.Denominator",
50
+ "output": "ans = [1 5]"
51
+ },
52
+ {
53
+ "description": "Positive feedback",
54
+ "input": "G = tf(2, [1 3]);\nT = feedback(G, 1, +1);\nT.Denominator",
55
+ "output": "ans = [1 1]"
56
+ }
57
+ ],
58
+ "faqs": [
59
+ {
60
+ "question": "Does `feedback` support MIMO systems?",
61
+ "answer": "Not yet. This implementation supports SISO transfer-function objects and scalar gains."
62
+ },
63
+ {
64
+ "question": "Does it support state-space models?",
65
+ "answer": "Not yet. The current model-family support is SISO `tf`."
66
+ }
67
+ ],
68
+ "links": [
69
+ {
70
+ "label": "tf",
71
+ "url": "./tf"
72
+ },
73
+ {
74
+ "label": "step",
75
+ "url": "./step"
76
+ },
77
+ {
78
+ "label": "isstable",
79
+ "url": "./isstable"
80
+ }
81
+ ],
82
+ "source": {
83
+ "label": "`crates/runmat-runtime/src/builtins/control/feedback.rs`",
84
+ "url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/control/feedback.rs"
85
+ },
86
+ "syntax": {
87
+ "example": {
88
+ "description": "Supported forms",
89
+ "input": "T = feedback(sys1)\nT = feedback(sys1, sys2)\nT = feedback(sys1, sys2, sign)",
90
+ "output": "T is a SISO tf object."
91
+ },
92
+ "points": [
93
+ "`sign` must be `-1` for negative feedback or `+1` for positive feedback.",
94
+ "`sys1` and `sys2` must be compatible SISO `tf` models or scalar gains.",
95
+ "Sample times must match when both operands are transfer functions."
96
+ ]
97
+ },
98
+ "validation": {
99
+ "summary": "`feedback` validates argument count, feedback sign, sample-time compatibility, zero-delay support, and transfer-function model shape. Tests cover unity negative feedback, positive feedback, scalar gains, and VM workflows using `tf('s')`.",
100
+ "implementation": {
101
+ "label": "`crates/runmat-runtime/src/builtins/control/feedback.rs`",
102
+ "url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/control/feedback.rs"
103
+ }
104
+ },
105
+ "gpu_residency": "`feedback` returns a host-side `tf` object. It does not preserve gpuArray residency.",
106
+ "key": "feedback",
107
+ "slug": "feedback",
108
+ "aliases": [],
109
+ "categoryPath": [
110
+ "control"
111
+ ]
112
+ };
113
+ export default builtinDoc;
114
+ //# sourceMappingURL=feedback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../../src/generated/builtins/feedback.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,UAAU;IACnB,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE;QACV,UAAU;QACV,aAAa;QACb,gBAAgB;QAChB,mBAAmB;QACnB,IAAI;KACL;IACD,SAAS,EAAE,mEAAmE;IAC9E,YAAY,EAAE;QACZ,0CAA0C;KAC3C;IACD,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,EAAE;QAChB,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,oJAAoJ;KAC9J;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,QAAQ;QACrB,OAAO,EAAE,gFAAgF;KAC1F;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,oCAAoC;QAC5C,aAAa,EAAE,mCAAmC;KACnD;IACD,aAAa,EAAE,6JAA6J;IAC5K,WAAW,EAAE;QACX,0GAA0G;QAC1G,gDAAgD;QAChD,yDAAyD;QACzD,kFAAkF;QAClF,8GAA8G;QAC9G,kDAAkD;QAClD,wFAAwF;KACzF;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,yBAAyB;YACxC,OAAO,EAAE,kEAAkE;YAC3E,QAAQ,EAAE,aAAa;SACxB;QACD;YACE,aAAa,EAAE,mBAAmB;YAClC,OAAO,EAAE,2DAA2D;YACpE,QAAQ,EAAE,aAAa;SACxB;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,uCAAuC;YACnD,QAAQ,EAAE,wFAAwF;SACnG;QACD;YACE,UAAU,EAAE,qCAAqC;YACjD,QAAQ,EAAE,yDAAyD;SACpE;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,MAAM;SACd;QACD;YACE,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,QAAQ;SAChB;QACD;YACE,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,YAAY;SACpB;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,0DAA0D;QACnE,KAAK,EAAE,uGAAuG;KAC/G;IACD,QAAQ,EAAE;QACR,SAAS,EAAE;YACT,aAAa,EAAE,iBAAiB;YAChC,OAAO,EAAE,8EAA8E;YACvF,QAAQ,EAAE,wBAAwB;SACnC;QACD,QAAQ,EAAE;YACR,0EAA0E;YAC1E,wEAAwE;YACxE,oEAAoE;SACrE;KACF;IACD,YAAY,EAAE;QACZ,SAAS,EAAE,+OAA+O;QAC1P,gBAAgB,EAAE;YAChB,OAAO,EAAE,0DAA0D;YACnE,KAAK,EAAE,uGAAuG;SAC/G;KACF;IACD,eAAe,EAAE,sFAAsF;IACvG,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,SAAS;KACV;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { BuiltinDoc } from "../../builtins.js";
2
+ declare const builtinDoc: BuiltinDoc;
3
+ export default builtinDoc;
4
+ //# sourceMappingURL=imhist.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imhist.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/imhist.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UAsHjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,123 @@
1
+ // @generated by scripts/generate-builtins.cjs
2
+ // Do not edit by hand.
3
+ const builtinDoc = {
4
+ "title": "imhist",
5
+ "category": "image",
6
+ "keywords": [
7
+ "imhist",
8
+ "image histogram",
9
+ "grayscale image",
10
+ "indexed image",
11
+ "colormap",
12
+ "matlab imhist"
13
+ ],
14
+ "summary": "Compute or display grayscale and indexed-image histograms.",
15
+ "references": [],
16
+ "gpu_support": {
17
+ "elementwise": false,
18
+ "reduction": false,
19
+ "precisions": [
20
+ "single",
21
+ "double"
22
+ ],
23
+ "broadcasting": "none",
24
+ "notes": "`imhist` gathers gpuArray inputs before binning so image-class validation, bin locations, and output shapes remain MATLAB-compatible."
25
+ },
26
+ "fusion": {
27
+ "elementwise": false,
28
+ "reduction": false,
29
+ "max_inputs": 2,
30
+ "constants": "inline"
31
+ },
32
+ "requires_feature": null,
33
+ "tested": {
34
+ "unit": "builtins::image::imhist::tests",
35
+ "integration": "runmat_vm::bytecode::compile::tests::compile_interprets_imhist_uint8_workflow"
36
+ },
37
+ "description": "`imhist` returns histogram counts for grayscale images and indexed images. Statement-form calls render a bar-chart histogram when plotting is available.",
38
+ "behaviors": [
39
+ "`imhist(I)` returns a 256-by-1 count vector for numeric grayscale images.",
40
+ "`imhist(I, n)` returns counts using `n` positive integer bins.",
41
+ "`[counts, binLocations] = imhist(I)` also returns the image-class bin centers.",
42
+ "Floating-point grayscale images must be finite normalized `single` or `double` data in `[0, 1]`.",
43
+ "`uint8` and `uint16` grayscale images use class ranges `[0, 255]` and `[0, 65535]` respectively.",
44
+ "Logical grayscale images use two bins for false and true values.",
45
+ "`imhist(X, map)` treats `X` as an indexed image and returns one bin per row of the Nx3 colormap.",
46
+ "Indexed images reject non-finite, non-integer, and out-of-range indices. Colormap values must be finite RGB values in `[0, 1]`.",
47
+ "Statement-form `imhist(...)` displays the histogram and returns no value. Builds without plotting support complete successfully without rendering."
48
+ ],
49
+ "examples": [
50
+ {
51
+ "description": "Count Intensities In A Byte Image",
52
+ "input": "I = uint8([0 1 1; 2 2 2]);\n[counts, bins] = imhist(I);\n[peak, idx] = max(counts);\n[bins(idx), peak]",
53
+ "output": "ans =\n 2 3"
54
+ },
55
+ {
56
+ "description": "Use Fewer Bins For A Normalized Image",
57
+ "input": "I = [0 0.25 0.5 1.0];\n[counts, bins] = imhist(I, 3);",
58
+ "output": "counts =\n 1\n 2\n 1"
59
+ },
60
+ {
61
+ "description": "Histogram An Indexed Image",
62
+ "input": "X = [1 2; 3 2];\nmap = [1 0 0; 0 1 0; 0 0 1];\n[counts, bins] = imhist(X, map);",
63
+ "output": "counts =\n 1\n 2\n 1"
64
+ },
65
+ {
66
+ "description": "Display A Histogram",
67
+ "input": "I = uint8([0 64 128; 128 192 255]);\nimhist(I);"
68
+ }
69
+ ],
70
+ "faqs": [
71
+ {
72
+ "question": "Why does `imhist` reject double values greater than 1?",
73
+ "answer": "MATLAB-style floating-point grayscale images are normalized image data. Use `uint8` or `uint16` when the values represent byte or word intensities."
74
+ },
75
+ {
76
+ "question": "How are indexed image offsets handled?",
77
+ "answer": "Double and single indexed images use one-based indices into the colormap. `uint8`, `uint16`, and logical indexed images use zero-based indices."
78
+ },
79
+ {
80
+ "question": "Does statement-form `imhist` always render a plot?",
81
+ "answer": "It renders when the plotting backend is available. Headless, no-plot, or non-main-thread contexts complete successfully without producing a value."
82
+ }
83
+ ],
84
+ "links": [
85
+ {
86
+ "label": "image",
87
+ "url": "./image"
88
+ },
89
+ {
90
+ "label": "imshow",
91
+ "url": "./imshow"
92
+ },
93
+ {
94
+ "label": "imread",
95
+ "url": "./imread"
96
+ },
97
+ {
98
+ "label": "histogram",
99
+ "url": "./histogram"
100
+ },
101
+ {
102
+ "label": "histcounts",
103
+ "url": "./histcounts"
104
+ }
105
+ ],
106
+ "source": {
107
+ "label": "`crates/runmat-runtime/src/builtins/image/imhist.rs`",
108
+ "url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/image/imhist.rs"
109
+ },
110
+ "gpu_residency": "`imhist` returns host-resident count and bin-location tensors because histogram assembly currently runs on the host.",
111
+ "gpu_behavior": [
112
+ "`imhist` gathers gpuArray inputs before validating image shape and class-specific ranges.",
113
+ "`imhist` terminates fusion chains because histogram counts depend on all image elements."
114
+ ],
115
+ "key": "imhist",
116
+ "slug": "imhist",
117
+ "aliases": [],
118
+ "categoryPath": [
119
+ "image"
120
+ ]
121
+ };
122
+ export default builtinDoc;
123
+ //# sourceMappingURL=imhist.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imhist.js","sourceRoot":"","sources":["../../../src/generated/builtins/imhist.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,QAAQ;IACjB,UAAU,EAAE,OAAO;IACnB,UAAU,EAAE;QACV,QAAQ;QACR,iBAAiB;QACjB,iBAAiB;QACjB,eAAe;QACf,UAAU;QACV,eAAe;KAChB;IACD,SAAS,EAAE,4DAA4D;IACvE,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE;YACZ,QAAQ;YACR,QAAQ;SACT;QACD,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,uIAAuI;KACjJ;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,QAAQ;KACtB;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,gCAAgC;QACxC,aAAa,EAAE,+EAA+E;KAC/F;IACD,aAAa,EAAE,0JAA0J;IACzK,WAAW,EAAE;QACX,2EAA2E;QAC3E,gEAAgE;QAChE,gFAAgF;QAChF,kGAAkG;QAClG,kGAAkG;QAClG,kEAAkE;QAClE,kGAAkG;QAClG,iIAAiI;QACjI,oJAAoJ;KACrJ;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,mCAAmC;YAClD,OAAO,EAAE,wGAAwG;YACjH,QAAQ,EAAE,qBAAqB;SAChC;QACD;YACE,aAAa,EAAE,uCAAuC;YACtD,OAAO,EAAE,uDAAuD;YAChE,QAAQ,EAAE,kCAAkC;SAC7C;QACD;YACE,aAAa,EAAE,4BAA4B;YAC3C,OAAO,EAAE,iFAAiF;YAC1F,QAAQ,EAAE,kCAAkC;SAC7C;QACD;YACE,aAAa,EAAE,qBAAqB;YACpC,OAAO,EAAE,iDAAiD;SAC3D;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,wDAAwD;YACpE,QAAQ,EAAE,qJAAqJ;SAChK;QACD;YACE,UAAU,EAAE,wCAAwC;YACpD,QAAQ,EAAE,iJAAiJ;SAC5J;QACD;YACE,UAAU,EAAE,oDAAoD;YAChE,QAAQ,EAAE,oJAAoJ;SAC/J;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,SAAS;SACjB;QACD;YACE,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,UAAU;SAClB;QACD;YACE,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,UAAU;SAClB;QACD;YACE,OAAO,EAAE,WAAW;YACpB,KAAK,EAAE,aAAa;SACrB;QACD;YACE,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,cAAc;SACtB;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,sDAAsD;QAC/D,KAAK,EAAE,mGAAmG;KAC3G;IACD,eAAe,EAAE,sHAAsH;IACvI,cAAc,EAAE;QACd,2FAA2F;QAC3F,0FAA0F;KAC3F;IACD,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,OAAO;KACR;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { BuiltinDoc } from "../../builtins.js";
2
+ declare const builtinDoc: BuiltinDoc;
3
+ export default builtinDoc;
4
+ //# sourceMappingURL=isstable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isstable.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/isstable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UA2FjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,96 @@
1
+ // @generated by scripts/generate-builtins.cjs
2
+ // Do not edit by hand.
3
+ const builtinDoc = {
4
+ "title": "isstable",
5
+ "category": "control",
6
+ "keywords": [
7
+ "isstable",
8
+ "stability",
9
+ "poles",
10
+ "control system",
11
+ "tf"
12
+ ],
13
+ "summary": "Test stability of SISO transfer-function models.",
14
+ "references": [
15
+ "title: \"MATLAB isstable documentation\""
16
+ ],
17
+ "gpu_support": {
18
+ "elementwise": false,
19
+ "reduction": false,
20
+ "precisions": [],
21
+ "broadcasting": "none",
22
+ "notes": "`isstable` analyzes host-side transfer-function metadata."
23
+ },
24
+ "fusion": {
25
+ "elementwise": false,
26
+ "reduction": false,
27
+ "max_inputs": 0,
28
+ "constants": "inline",
29
+ "notes": "`isstable` is scalar model analysis and is not fused."
30
+ },
31
+ "requires_feature": null,
32
+ "tested": {
33
+ "unit": "builtins::control::isstable::tests",
34
+ "integration": "crates/runmat-vm/tests/control.rs"
35
+ },
36
+ "description": "`isstable(sys)` returns true when all continuous-time poles are in the open left-half plane, or all discrete-time poles are inside the unit circle.",
37
+ "behaviors": [
38
+ "Supports SISO `tf` objects.",
39
+ "Continuous-time stability requires `real(pole) < 0`.",
40
+ "Discrete-time stability requires `abs(pole) < 1`.",
41
+ "Static-gain models are stable."
42
+ ],
43
+ "examples": [
44
+ {
45
+ "description": "Stable first-order model",
46
+ "input": "H = tf(1, [1 1]);\nisstable(H)",
47
+ "output": "ans = logical\n 1"
48
+ }
49
+ ],
50
+ "faqs": [
51
+ {
52
+ "question": "Does marginal stability return true?",
53
+ "answer": "No. Poles on the imaginary axis or unit circle are not considered stable by this predicate."
54
+ }
55
+ ],
56
+ "links": [
57
+ {
58
+ "label": "pole",
59
+ "url": "./pole"
60
+ },
61
+ {
62
+ "label": "tf",
63
+ "url": "./tf"
64
+ }
65
+ ],
66
+ "source": {
67
+ "label": "`crates/runmat-runtime/src/builtins/control/isstable.rs`",
68
+ "url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/control/isstable.rs"
69
+ },
70
+ "syntax": {
71
+ "example": {
72
+ "description": "Supported form",
73
+ "input": "tf = isstable(sys)",
74
+ "output": "tf is a logical scalar."
75
+ },
76
+ "points": [
77
+ "`sys` must be a SISO `tf` object."
78
+ ]
79
+ },
80
+ "validation": {
81
+ "summary": "`isstable` validates the input model, computes poles, and applies continuous or discrete stability rules. Tests cover stable continuous-time models and VM integration.",
82
+ "implementation": {
83
+ "label": "`crates/runmat-runtime/src/builtins/control/isstable.rs`",
84
+ "url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/control/isstable.rs"
85
+ }
86
+ },
87
+ "gpu_residency": "`isstable` returns a host logical scalar.",
88
+ "key": "isstable",
89
+ "slug": "isstable",
90
+ "aliases": [],
91
+ "categoryPath": [
92
+ "control"
93
+ ]
94
+ };
95
+ export default builtinDoc;
96
+ //# sourceMappingURL=isstable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isstable.js","sourceRoot":"","sources":["../../../src/generated/builtins/isstable.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,UAAU;IACnB,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE;QACV,UAAU;QACV,WAAW;QACX,OAAO;QACP,gBAAgB;QAChB,IAAI;KACL;IACD,SAAS,EAAE,kDAAkD;IAC7D,YAAY,EAAE;QACZ,0CAA0C;KAC3C;IACD,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,EAAE;QAChB,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,2DAA2D;KACrE;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,QAAQ;QACrB,OAAO,EAAE,uDAAuD;KACjE;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,oCAAoC;QAC5C,aAAa,EAAE,mCAAmC;KACnD;IACD,aAAa,EAAE,qJAAqJ;IACpK,WAAW,EAAE;QACX,6BAA6B;QAC7B,sDAAsD;QACtD,mDAAmD;QACnD,gCAAgC;KACjC;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,0BAA0B;YACzC,OAAO,EAAE,gCAAgC;YACzC,QAAQ,EAAE,qBAAqB;SAChC;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,sCAAsC;YAClD,QAAQ,EAAE,6FAA6F;SACxG;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,QAAQ;SAChB;QACD;YACE,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,MAAM;SACd;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,0DAA0D;QACnE,KAAK,EAAE,uGAAuG;KAC/G;IACD,QAAQ,EAAE;QACR,SAAS,EAAE;YACT,aAAa,EAAE,gBAAgB;YAC/B,OAAO,EAAE,oBAAoB;YAC7B,QAAQ,EAAE,yBAAyB;SACpC;QACD,QAAQ,EAAE;YACR,mCAAmC;SACpC;KACF;IACD,YAAY,EAAE;QACZ,SAAS,EAAE,yKAAyK;QACpL,gBAAgB,EAAE;YAChB,OAAO,EAAE,0DAA0D;YACnE,KAAK,EAAE,uGAAuG;SAC/G;KACF;IACD,eAAe,EAAE,2CAA2C;IAC5D,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,SAAS;KACV;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { BuiltinDoc } from "../../builtins.js";
2
+ declare const builtinDoc: BuiltinDoc;
3
+ export default builtinDoc;
4
+ //# sourceMappingURL=pole.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pole.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/pole.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UA2FjB,CAAC;AAEF,eAAe,UAAU,CAAC"}