@idlizer/core 2.0.30 → 2.0.32

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 (30) hide show
  1. package/build/lib/src/LanguageWriters/ArgConvertors.d.ts +3 -2
  2. package/build/lib/src/LanguageWriters/ArgConvertors.js +19 -19
  3. package/build/lib/src/LanguageWriters/convertors/CppConvertors.js +3 -5
  4. package/build/lib/src/LanguageWriters/convertors/ETSConvertors.js +1 -1
  5. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.js +1 -1
  6. package/build/lib/src/LanguageWriters/writers/CppLanguageWriter.js +1 -1
  7. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.js +2 -2
  8. package/build/lib/src/LanguageWriters/writers/JavaLanguageWriter.js +1 -1
  9. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.js +5 -2
  10. package/build/lib/src/from-idl/DtsPrinter.js +18 -15
  11. package/build/lib/src/from-idl/deserialize.d.ts +1 -2
  12. package/build/lib/src/from-idl/deserialize.js +10 -12
  13. package/build/lib/src/idl.d.ts +18 -8
  14. package/build/lib/src/idl.js +81 -39
  15. package/build/lib/src/idlize.d.ts +12 -2
  16. package/build/lib/src/idlize.js +24 -9
  17. package/build/lib/src/library.d.ts +5 -10
  18. package/build/lib/src/library.js +2 -2
  19. package/build/lib/src/peer-generation/PeerFile.d.ts +4 -3
  20. package/build/lib/src/peer-generation/PeerFile.js +10 -3
  21. package/build/lib/src/peer-generation/PeerLibrary.d.ts +4 -6
  22. package/build/lib/src/peer-generation/PeerLibrary.js +18 -36
  23. package/build/lib/src/peer-generation/idl/common.d.ts +1 -1
  24. package/build/lib/src/peer-generation/idl/common.js +4 -4
  25. package/build/lib/src/peer-generation/unions.js +2 -2
  26. package/build/lib/src/util.d.ts +2 -0
  27. package/build/lib/src/util.js +4 -0
  28. package/build/lib/src/visitor.js +1 -1
  29. package/package.json +1 -1
  30. package/webidl2.js/dist/webidl2.js +20 -19
@@ -2073,32 +2073,35 @@ class Import extends _base_js__WEBPACK_IMPORTED_MODULE_0__.Base {
2073
2073
  return;
2074
2074
  }
2075
2075
  const tokens = { import: importKeyword };
2076
- tokens.name =
2076
+ tokens.clause =
2077
2077
  tokeniser.consumeKind("string") ||
2078
+ tokeniser.consumeKind("identifier") ||
2078
2079
  tokeniser.error("Incomplete import statement");
2080
+ tokens.as = tokeniser.consume("as");
2081
+ if (tokens.as)
2082
+ tokens.alias =
2083
+ tokeniser.consumeKind("identifier") ||
2084
+ tokeniser.error("Incomplete import statement");
2079
2085
  tokens.termination =
2080
2086
  tokeniser.consume(";") ||
2081
2087
  tokeniser.error("No terminating ; for import statement");
2082
2088
  const ret = (0,_helpers_js__WEBPACK_IMPORTED_MODULE_1__.autoParenter)(new Import({ source: tokeniser.source, tokens }));
2083
- ret.nameValue = tokens.name.value;
2089
+ ret.clause = tokens.clause.value;
2090
+ ret.alias = tokens.alias?.value;
2084
2091
  return ret.this;
2085
2092
  }
2086
2093
 
2087
2094
  get type() {
2088
2095
  return "import";
2089
2096
  }
2090
- get target() {
2091
- return (0,_helpers_js__WEBPACK_IMPORTED_MODULE_1__.unescape)(this.tokens.target.value);
2092
- }
2093
- get import() {
2094
- return (0,_helpers_js__WEBPACK_IMPORTED_MODULE_1__.unescape)(this.tokens.importName.value);
2095
- }
2096
2097
 
2097
2098
  write(w) {
2098
2099
  return w.ts.definition(
2099
2100
  w.ts.wrap([
2100
2101
  w.token(this.tokens.import),
2101
- w.reference_token(this.tokens.name, this),
2102
+ w.reference_token(this.tokens.clause, this),
2103
+ w.token(this.tokens.as),
2104
+ w.token(this.tokens.alias),
2102
2105
  w.token(this.tokens.termination),
2103
2106
  ]),
2104
2107
  { data: this },
@@ -2838,27 +2841,26 @@ class Package extends _base_js__WEBPACK_IMPORTED_MODULE_0__.Base {
2838
2841
  return;
2839
2842
  }
2840
2843
  const tokens = { base: packageKeyword };
2841
- tokens.name =
2842
- tokeniser.consumeKind("string") || tokeniser.error("No name for package");
2844
+ tokens.clause =
2845
+ tokeniser.consumeKind("string") ||
2846
+ tokeniser.consumeKind("identifier") ||
2847
+ tokeniser.error("No clause for package");
2843
2848
  tokens.termination =
2844
2849
  tokeniser.consume(";") || tokeniser.error("No semicolon after package");
2845
2850
  const ret = (0,_helpers_js__WEBPACK_IMPORTED_MODULE_1__.autoParenter)(new Package({ source: tokeniser.source, tokens }));
2846
- ret.nameValue = tokens.name.value;
2851
+ ret.clause = tokens.clause.value;
2847
2852
  return ret.this;
2848
2853
  }
2849
2854
 
2850
2855
  get type() {
2851
2856
  return "package";
2852
2857
  }
2853
- get name() {
2854
- return (0,_helpers_js__WEBPACK_IMPORTED_MODULE_1__.unescape)(this.tokens.name.value);
2855
- }
2856
2858
 
2857
2859
  write(w) {
2858
2860
  return w.ts.definition(
2859
2861
  w.ts.wrap([
2860
2862
  w.token(this.tokens.base),
2861
- w.reference_token(this.tokens.name, this),
2863
+ w.reference_token(this.tokens.clause, this),
2862
2864
  w.token(this.tokens.termination),
2863
2865
  ]),
2864
2866
  { data: this },
@@ -3640,6 +3642,7 @@ const argumentNameKeywords = [
3640
3642
  "unrestricted",
3641
3643
  "package",
3642
3644
  "import",
3645
+ "as",
3643
3646
  "version",
3644
3647
  ];
3645
3648
 
@@ -3733,9 +3736,7 @@ function tokenise(str) {
3733
3736
  const token = tokens[lastIndex];
3734
3737
  if (result !== -1) {
3735
3738
  if (reserved.includes(token.value)) {
3736
- const message = `${(0,_productions_helpers_js__WEBPACK_IMPORTED_MODULE_1__.unescape)(
3737
- token.value,
3738
- )} is a reserved identifier and must not be used.`;
3739
+ const message = `${(0,_productions_helpers_js__WEBPACK_IMPORTED_MODULE_1__.unescape)(token.value)} is a reserved identifier and must not be used.`;
3739
3740
  throw new WebIDLParseError(
3740
3741
  (0,_error_js__WEBPACK_IMPORTED_MODULE_0__.syntaxError)(tokens, lastIndex, null, message),
3741
3742
  );