@soundscript/soundscript 0.1.15 → 0.1.17

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 (47) hide show
  1. package/decode.d.ts +2 -2
  2. package/decode.js.map +1 -1
  3. package/json.js +1 -1
  4. package/numerics.js +4 -4
  5. package/package.json +6 -6
  6. package/project-transform/src/checker/rules/flow.js +16 -3
  7. package/project-transform/src/checker/rules/flow.ts +20 -3
  8. package/project-transform/src/checker/rules/flow_invalidation.js +18 -21
  9. package/project-transform/src/checker/rules/flow_invalidation.ts +25 -20
  10. package/project-transform/src/checker/rules/relations.js +157 -3
  11. package/project-transform/src/checker/rules/relations.ts +207 -1
  12. package/project-transform/src/checker/rules/unsound_syntax.js +0 -3
  13. package/project-transform/src/checker/rules/unsound_syntax.ts +0 -4
  14. package/project-transform/src/cli.js +1 -1
  15. package/project-transform/src/cli.ts +1 -1
  16. package/project-transform/src/compiler/compile_project.js +75 -9
  17. package/project-transform/src/compiler/compile_project.ts +121 -7
  18. package/project-transform/src/compiler/ir.ts +19 -1
  19. package/project-transform/src/compiler/lower.js +10335 -1477
  20. package/project-transform/src/compiler/lower.ts +16826 -4074
  21. package/project-transform/src/compiler/toolchain.js +36 -4
  22. package/project-transform/src/compiler/toolchain.ts +36 -4
  23. package/project-transform/src/compiler/wasm_js_host_runtime.js +134 -0
  24. package/project-transform/src/compiler/wasm_js_host_runtime.ts +146 -0
  25. package/project-transform/src/compiler/wat_arrays.js +4 -1
  26. package/project-transform/src/compiler/wat_arrays.ts +5 -1
  27. package/project-transform/src/compiler/wat_emitter.js +1497 -311
  28. package/project-transform/src/compiler/wat_emitter.ts +2971 -1017
  29. package/project-transform/src/compiler/wat_tagged.js +5 -0
  30. package/project-transform/src/compiler/wat_tagged.ts +5 -0
  31. package/project-transform/src/compiler_generator_runner.js +2139 -19
  32. package/project-transform/src/compiler_generator_runner.ts +2143 -20
  33. package/project-transform/src/compiler_promise_runner.js +4615 -636
  34. package/project-transform/src/compiler_promise_runner.ts +4703 -659
  35. package/project-transform/src/compiler_test_helpers.js +0 -579
  36. package/project-transform/src/compiler_test_helpers.ts +0 -648
  37. package/project-transform/src/frontend/macro_expander.js +4 -6
  38. package/project-transform/src/frontend/macro_expander.ts +4 -6
  39. package/project-transform/src/frontend/macro_operand_semantics.js +124 -1
  40. package/project-transform/src/frontend/macro_operand_semantics.ts +230 -6
  41. package/project-transform/src/frontend/macro_resolver.js +2 -2
  42. package/project-transform/src/frontend/macro_resolver.ts +2 -1
  43. package/project-transform/src/frontend/project_macro_support.js +29 -5
  44. package/project-transform/src/frontend/project_macro_support.ts +46 -10
  45. package/project-transform/src/stdlib/decode.d.ts +2 -2
  46. package/project-transform/src/stdlib/decode.ts +2 -2
  47. package/soundscript/decode.sts +2 -2
@@ -1337,6 +1337,15 @@ export interface CompilerWhileStatementIR {
1337
1337
  body: CompilerStatementIR[];
1338
1338
  }
1339
1339
 
1340
+ export interface CompilerTrapStatementIR {
1341
+ kind: 'trap';
1342
+ }
1343
+
1344
+ export interface CompilerThrowTaggedStatementIR {
1345
+ kind: 'throw_tagged';
1346
+ value: CompilerExpressionIR;
1347
+ }
1348
+
1340
1349
  export type CompilerStatementIR =
1341
1350
  | CompilerLocalSetStatementIR
1342
1351
  | CompilerReturnStatementIR
@@ -1350,7 +1359,9 @@ export type CompilerStatementIR =
1350
1359
  | CompilerBoxSetStatementIR
1351
1360
  | CompilerDynamicObjectPropertySetStatementIR
1352
1361
  | CompilerIfStatementIR
1353
- | CompilerWhileStatementIR;
1362
+ | CompilerWhileStatementIR
1363
+ | CompilerTrapStatementIR
1364
+ | CompilerThrowTaggedStatementIR;
1354
1365
 
1355
1366
  export interface CompilerTaggedPrimitiveBoundaryKindsIR {
1356
1367
  includesBoolean?: boolean;
@@ -1442,6 +1453,7 @@ export interface CompilerFunctionIR {
1442
1453
  hostImport?: {
1443
1454
  module: string;
1444
1455
  name: string;
1456
+ construct?: boolean;
1445
1457
  promiseResult?: boolean;
1446
1458
  };
1447
1459
  hostClassConstructorParams?: readonly CompilerFunctionHostClassConstructorParamIR[];
@@ -1455,6 +1467,9 @@ export interface CompilerFunctionIR {
1455
1467
  hostDynamicCollectionParams?: readonly CompilerFunctionHostDynamicCollectionParamIR[];
1456
1468
  hostPromiseParams?: readonly string[];
1457
1469
  hostPromiseResult?: boolean;
1470
+ hostGeneratorResult?: boolean;
1471
+ hostAsyncGeneratorResult?: boolean;
1472
+ usesAsyncGeneratorHostStepBridge?: boolean;
1458
1473
  hostFallbackClosureProperties?: readonly CompilerFunctionHostFallbackClosurePropertyIR[];
1459
1474
  hostFallbackClassConstructorProperties?:
1460
1475
  readonly CompilerFunctionHostFallbackClassConstructorPropertyIR[];
@@ -1494,6 +1509,7 @@ export interface CompilerFunctionHostDynamicCollectionParamIR {
1494
1509
 
1495
1510
  export interface CompilerModuleIR {
1496
1511
  closureSignatures?: readonly CompilerClosureSignatureIR[];
1512
+ syncTryCatchClosureSignatureId?: number;
1497
1513
  functions: CompilerFunctionIR[];
1498
1514
  jsHostImports?: readonly CompilerJsHostImportIR[];
1499
1515
  stringLiterals?: readonly string[];
@@ -1503,10 +1519,12 @@ export interface CompilerModuleIR {
1503
1519
 
1504
1520
  export interface CompilerJsHostImportIR {
1505
1521
  hostImportName: string;
1522
+ bindingKind: 'function' | 'constructor' | 'static_method' | 'property';
1506
1523
  importKind: 'default' | 'named';
1507
1524
  importerModulePath: string;
1508
1525
  moduleSpecifier: string;
1509
1526
  exportName?: string;
1527
+ memberName?: string;
1510
1528
  }
1511
1529
 
1512
1530
  export interface CompilerClosureSignatureIR {