@onda-lang/wasm-compiler 0.5.4 → 0.7.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/README.md +63 -7
- package/bin/onda-wasm.js +1 -1
- package/dist/backend/artifact.d.ts +2 -0
- package/dist/backend/constants.js +1 -1
- package/dist/backend/index.d.ts +2 -0
- package/dist/backend/index.js +2639 -317
- package/dist/build.json +3 -3
- package/dist/frontend/README.md +20 -7
- package/dist/frontend/onda_compiler_web.d.ts +120 -9
- package/dist/frontend/onda_compiler_web.js +556 -42
- package/dist/frontend/onda_compiler_web_bg.wasm +0 -0
- package/dist/frontend/onda_compiler_web_bg.wasm.d.ts +42 -5
- package/dist/frontend/package.json +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
- package/src/index.d.ts +119 -5
- package/src/index.js +455 -26
- package/src/worker.js +63 -6
|
@@ -1,18 +1,55 @@
|
|
|
1
1
|
/* tslint:disable */
|
|
2
2
|
/* eslint-disable */
|
|
3
3
|
export const memory: WebAssembly.Memory;
|
|
4
|
+
export const __wbg_frontendjsoncompilation_free: (a: number, b: number) => void;
|
|
5
|
+
export const __wbg_frontendmessagepackcompilation_free: (a: number, b: number) => void;
|
|
4
6
|
export const __wbg_ondalsp_free: (a: number, b: number) => void;
|
|
5
|
-
export const
|
|
6
|
-
export const
|
|
7
|
-
export const
|
|
8
|
-
export const
|
|
7
|
+
export const __wbg_webdecodedbufferasset_free: (a: number, b: number) => void;
|
|
8
|
+
export const __wbg_webmaterializedprojectbuilder_free: (a: number, b: number) => void;
|
|
9
|
+
export const __wbg_webprojectimagebuilder_free: (a: number, b: number) => void;
|
|
10
|
+
export const __wbg_webprojectmaterializationplan_free: (a: number, b: number) => void;
|
|
11
|
+
export const buffer_asset_format_version: () => number;
|
|
12
|
+
export const compile_project_image_to_mir_messagepack: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
13
|
+
export const compile_source_workspace_to_mir_json: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
14
|
+
export const compile_source_workspace_to_mir_messagepack: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
|
|
15
|
+
export const compile_to_mir_json: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
16
|
+
export const compile_to_mir_messagepack: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
17
|
+
export const current_stdlib_digest: () => [number, number];
|
|
18
|
+
export const decode_buffer_asset: (a: number, b: number) => [number, number, number];
|
|
19
|
+
export const decode_buffer_file: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
20
|
+
export const encode_buffer_asset: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
|
|
21
|
+
export const frontendjsoncompilation_source_files_json: (a: number) => [number, number];
|
|
22
|
+
export const frontendjsoncompilation_source_image_json: (a: number) => [number, number];
|
|
23
|
+
export const frontendjsoncompilation_take_mir: (a: number) => [number, number];
|
|
24
|
+
export const frontendmessagepackcompilation_source_files_json: (a: number) => [number, number];
|
|
25
|
+
export const frontendmessagepackcompilation_source_image_json: (a: number) => [number, number];
|
|
26
|
+
export const inspect_project_image: (a: number, b: number) => [number, number, number, number];
|
|
27
|
+
export const materialize_project_image: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
9
28
|
export const mir_schema_version: () => number;
|
|
10
29
|
export const ondalsp_handle_message: (a: number, b: number, c: number) => [number, number, number, number];
|
|
11
30
|
export const ondalsp_new: () => number;
|
|
12
31
|
export const ondalsp_set_analysis_options: (a: number, b: number, c: number) => [number, number];
|
|
32
|
+
export const webdecodedbufferasset_canonical_payload: (a: number) => [number, number];
|
|
33
|
+
export const webdecodedbufferasset_channels: (a: number) => number;
|
|
34
|
+
export const webdecodedbufferasset_element: (a: number) => [number, number];
|
|
35
|
+
export const webdecodedbufferasset_frames: (a: number) => number;
|
|
36
|
+
export const webdecodedbufferasset_sample_rate: (a: number) => number;
|
|
37
|
+
export const webmaterializedprojectbuilder_add_file: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
38
|
+
export const webmaterializedprojectbuilder_new: () => number;
|
|
39
|
+
export const webmaterializedprojectbuilder_select_project: (a: number, b: number, c: number) => [number, number];
|
|
40
|
+
export const webmaterializedprojectbuilder_serialize: (a: number) => [number, number, number, number];
|
|
41
|
+
export const webprojectimagebuilder_add_buffer: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
42
|
+
export const webprojectimagebuilder_new: (a: number, b: number) => [number, number, number];
|
|
43
|
+
export const webprojectimagebuilder_serialize: (a: number) => [number, number, number, number];
|
|
44
|
+
export const webprojectmaterializationplan_directories_json: (a: number) => [number, number];
|
|
45
|
+
export const webprojectmaterializationplan_file_bytes: (a: number, b: number) => [number, number];
|
|
46
|
+
export const webprojectmaterializationplan_file_count: (a: number) => number;
|
|
47
|
+
export const webprojectmaterializationplan_file_path: (a: number, b: number) => [number, number];
|
|
48
|
+
export const project_image_format_version: () => number;
|
|
49
|
+
export const frontendmessagepackcompilation_take_mir: (a: number) => [number, number];
|
|
13
50
|
export const __wbindgen_externrefs: WebAssembly.Table;
|
|
14
51
|
export const __wbindgen_malloc: (a: number, b: number) => number;
|
|
15
|
-
export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
16
52
|
export const __externref_table_dealloc: (a: number) => void;
|
|
53
|
+
export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
17
54
|
export const __wbindgen_free: (a: number, b: number, c: number) => void;
|
|
18
55
|
export const __wbindgen_start: () => void;
|
package/dist/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const ONDA_VERSION = "0.
|
|
1
|
+
export const ONDA_VERSION = "0.7.0";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onda-lang/wasm-compiler",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Onda source-to-WebAssembly compiler for browsers and Node.js",
|
|
6
6
|
"license": "MIT",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"prepack": "npm run build"
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
|
-
"@onda-lang/processor-abi": "0.
|
|
62
|
+
"@onda-lang/processor-abi": "0.7.0",
|
|
63
63
|
"binaryen": "130.0.0"
|
|
64
64
|
},
|
|
65
65
|
"publishConfig": {
|
package/src/index.d.ts
CHANGED
|
@@ -5,6 +5,8 @@ export {
|
|
|
5
5
|
PROCESSOR_ABI_VERSION,
|
|
6
6
|
PROCESSOR_ARTIFACT_FORMAT,
|
|
7
7
|
PROCESSOR_ARTIFACT_FORMAT_VERSION,
|
|
8
|
+
PROCESSOR_EXECUTION_OK,
|
|
9
|
+
PROCESSOR_EXECUTION_RUNTIME_SAFETY_FAILURE,
|
|
8
10
|
PROCESSOR_SNAPSHOT_FORMAT_VERSION,
|
|
9
11
|
createProcessorArtifactFiles,
|
|
10
12
|
loadProcessorArtifactFiles,
|
|
@@ -48,20 +50,129 @@ export interface OndaCompileOptions {
|
|
|
48
50
|
codegen?: OndaCodegenOptions;
|
|
49
51
|
}
|
|
50
52
|
|
|
51
|
-
export interface
|
|
53
|
+
export interface OndaSourceWorkspace {
|
|
52
54
|
entry: string;
|
|
53
55
|
sources: Record<string, string>;
|
|
54
56
|
}
|
|
55
57
|
|
|
58
|
+
export type OndaSourceReferenceKind = "include" | "import";
|
|
59
|
+
|
|
60
|
+
export interface OndaSourceDocument {
|
|
61
|
+
path: string;
|
|
62
|
+
contents: string;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export interface OndaSourceResolution {
|
|
66
|
+
source: string;
|
|
67
|
+
kind: OndaSourceReferenceKind;
|
|
68
|
+
specifier: string;
|
|
69
|
+
target: string;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export interface OndaSourceGraph {
|
|
73
|
+
entry: string;
|
|
74
|
+
stdlibDigest: string;
|
|
75
|
+
documents: OndaSourceDocument[];
|
|
76
|
+
resolutions: OndaSourceResolution[];
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
export type OndaBufferElement = "bool" | "i32" | "i64" | "f32" | "f64";
|
|
80
|
+
export type OndaBufferData =
|
|
81
|
+
| Uint8Array
|
|
82
|
+
| Int32Array
|
|
83
|
+
| BigInt64Array
|
|
84
|
+
| Float32Array
|
|
85
|
+
| Float64Array;
|
|
86
|
+
|
|
87
|
+
export interface OndaBufferAssetBinding {
|
|
88
|
+
element: OndaBufferElement;
|
|
89
|
+
frames: number;
|
|
90
|
+
channels: number;
|
|
91
|
+
sampleRate: number;
|
|
92
|
+
data: OndaBufferData;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export interface OndaProjectBufferInfo {
|
|
96
|
+
name: string;
|
|
97
|
+
assetId: string;
|
|
98
|
+
element: OndaBufferElement;
|
|
99
|
+
frames: number;
|
|
100
|
+
channels: number;
|
|
101
|
+
sampleRate: number;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
export interface OndaProjectImageInfo {
|
|
105
|
+
formatVersion: number;
|
|
106
|
+
contentDigest: string;
|
|
107
|
+
sourceGraph: OndaSourceGraph;
|
|
108
|
+
buffers: OndaProjectBufferInfo[];
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
export interface OndaSerializedProjectImage extends OndaProjectImageInfo {
|
|
112
|
+
bytes: Uint8Array;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
export interface OndaMaterializedProjectFile {
|
|
116
|
+
path: string;
|
|
117
|
+
bytes: Uint8Array;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
export interface OndaProjectMaterialization {
|
|
121
|
+
directories: string[];
|
|
122
|
+
files: OndaMaterializedProjectFile[];
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export interface OndaProjectCapabilities {
|
|
126
|
+
imageFormatVersion: number;
|
|
127
|
+
bufferAssetFormatVersion: number;
|
|
128
|
+
stdlibDigest: string;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
export interface OndaCompilationResult {
|
|
132
|
+
artifact: OndaProcessorArtifact;
|
|
133
|
+
/** Entry first, then transitive non-stdlib imports/includes in discovery order. */
|
|
134
|
+
sourceFiles: string[];
|
|
135
|
+
/** Exact resolved graph for successful multi-file/project-image compilation. */
|
|
136
|
+
sourceGraph: OndaSourceGraph | null;
|
|
137
|
+
}
|
|
138
|
+
|
|
56
139
|
export interface OndaCompilerInstance {
|
|
57
140
|
compileSource(
|
|
58
141
|
source: string,
|
|
59
142
|
options?: OndaCompileOptions,
|
|
60
|
-
): Promise<
|
|
61
|
-
|
|
62
|
-
|
|
143
|
+
): Promise<OndaCompilationResult>;
|
|
144
|
+
compileWorkspace(
|
|
145
|
+
workspace: OndaSourceWorkspace,
|
|
146
|
+
options?: OndaCompileOptions,
|
|
147
|
+
): Promise<OndaCompilationResult>;
|
|
148
|
+
compileProjectImage(
|
|
149
|
+
imageBytes: ArrayBuffer | ArrayBufferView,
|
|
63
150
|
options?: OndaCompileOptions,
|
|
64
|
-
): Promise<
|
|
151
|
+
): Promise<OndaCompilationResult>;
|
|
152
|
+
createProjectImage(
|
|
153
|
+
sourceGraph: OndaSourceGraph,
|
|
154
|
+
buffers?: Map<string, ArrayBuffer | ArrayBufferView>
|
|
155
|
+
| Record<string, ArrayBuffer | ArrayBufferView>,
|
|
156
|
+
): Promise<OndaSerializedProjectImage>;
|
|
157
|
+
inspectProjectImage(
|
|
158
|
+
imageBytes: ArrayBuffer | ArrayBufferView,
|
|
159
|
+
): Promise<OndaProjectImageInfo>;
|
|
160
|
+
loadProjectFiles(
|
|
161
|
+
files: Map<string, ArrayBuffer | ArrayBufferView>
|
|
162
|
+
| Record<string, ArrayBuffer | ArrayBufferView>,
|
|
163
|
+
projectFilePath?: string | null,
|
|
164
|
+
): Promise<OndaSerializedProjectImage>;
|
|
165
|
+
materializeProjectImage(
|
|
166
|
+
imageBytes: ArrayBuffer | ArrayBufferView,
|
|
167
|
+
assetFileNames?: Map<string, string> | Record<string, string>,
|
|
168
|
+
): Promise<OndaProjectMaterialization>;
|
|
169
|
+
encodeBufferAsset(binding: OndaBufferAssetBinding): Promise<Uint8Array>;
|
|
170
|
+
decodeBufferAsset(bytes: ArrayBuffer | ArrayBufferView): Promise<OndaBufferAssetBinding>;
|
|
171
|
+
decodeBufferFile(
|
|
172
|
+
bytes: ArrayBuffer | ArrayBufferView,
|
|
173
|
+
path?: string,
|
|
174
|
+
): Promise<OndaBufferAssetBinding>;
|
|
175
|
+
projectCapabilities(): Promise<OndaProjectCapabilities>;
|
|
65
176
|
sendLspMessage(message: OndaLspMessage): Promise<OndaLspMessage[]>;
|
|
66
177
|
setLspAnalysisOptions(options?: OndaCompileOptions): Promise<void>;
|
|
67
178
|
dispose(): Promise<void>;
|
|
@@ -108,6 +219,9 @@ export class OndaCompilerError extends Error {
|
|
|
108
219
|
|
|
109
220
|
export class OndaCompileError extends OndaCompilerError {
|
|
110
221
|
readonly diagnostics: OndaCompilerDiagnostic[];
|
|
222
|
+
readonly sourceFiles: string[];
|
|
223
|
+
/** Referenced non-stdlib source candidates which were not present. */
|
|
224
|
+
readonly unresolvedSourceFiles: string[];
|
|
111
225
|
}
|
|
112
226
|
|
|
113
227
|
export class OndaBinaryenError extends Error {}
|