@idlizer/core 2.1.2 → 2.1.5

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 (79) hide show
  1. package/build/lib/src/LanguageWriters/ArgConvertors.d.ts +3 -3
  2. package/build/lib/src/LanguageWriters/ArgConvertors.js +36 -30
  3. package/build/lib/src/LanguageWriters/LanguageWriter.d.ts +26 -13
  4. package/build/lib/src/LanguageWriters/LanguageWriter.js +26 -52
  5. package/build/lib/src/LanguageWriters/convertors/CJConvertors.d.ts +2 -1
  6. package/build/lib/src/LanguageWriters/convertors/CJConvertors.js +16 -5
  7. package/build/lib/src/LanguageWriters/convertors/CppConvertors.d.ts +4 -2
  8. package/build/lib/src/LanguageWriters/convertors/CppConvertors.js +20 -12
  9. package/build/lib/src/LanguageWriters/convertors/ETSConvertors.js +7 -17
  10. package/build/lib/src/LanguageWriters/convertors/InteropConvertors.d.ts +4 -2
  11. package/build/lib/src/LanguageWriters/convertors/InteropConvertors.js +9 -3
  12. package/build/lib/src/LanguageWriters/convertors/JavaConvertors.d.ts +2 -1
  13. package/build/lib/src/LanguageWriters/convertors/JavaConvertors.js +24 -4
  14. package/build/lib/src/LanguageWriters/convertors/TSConvertors.d.ts +4 -2
  15. package/build/lib/src/LanguageWriters/convertors/TSConvertors.js +47 -28
  16. package/build/lib/src/LanguageWriters/nameConvertor.d.ts +3 -1
  17. package/build/lib/src/LanguageWriters/nameConvertor.js +5 -1
  18. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.d.ts +12 -9
  19. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.js +10 -37
  20. package/build/lib/src/LanguageWriters/writers/CLikeLanguageWriter.d.ts +4 -1
  21. package/build/lib/src/LanguageWriters/writers/CLikeLanguageWriter.js +1 -1
  22. package/build/lib/src/LanguageWriters/writers/CppLanguageWriter.d.ts +9 -9
  23. package/build/lib/src/LanguageWriters/writers/CppLanguageWriter.js +15 -24
  24. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.d.ts +14 -8
  25. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.js +18 -18
  26. package/build/lib/src/LanguageWriters/writers/JavaLanguageWriter.d.ts +4 -6
  27. package/build/lib/src/LanguageWriters/writers/JavaLanguageWriter.js +15 -14
  28. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.d.ts +7 -5
  29. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.js +22 -43
  30. package/build/lib/src/LibraryInterface.d.ts +1 -4
  31. package/build/lib/src/config.d.ts +206 -66
  32. package/build/lib/src/config.js +7 -3
  33. package/build/lib/src/configDescriber.d.ts +30 -3
  34. package/build/lib/src/configDescriber.js +99 -1
  35. package/build/lib/src/from-idl/DtsPrinter.js +30 -18
  36. package/build/lib/src/from-idl/IDLLinter.d.ts +40 -7
  37. package/build/lib/src/from-idl/IDLLinter.js +211 -25
  38. package/build/lib/src/from-idl/common.js +1 -1
  39. package/build/lib/src/from-idl/deserialize.d.ts +4 -1
  40. package/build/lib/src/from-idl/deserialize.js +434 -346
  41. package/build/lib/src/idl.d.ts +25 -17
  42. package/build/lib/src/idl.js +363 -109
  43. package/build/lib/src/idlize.d.ts +2 -1
  44. package/build/lib/src/idlize.js +82 -26
  45. package/build/lib/src/index.d.ts +4 -3
  46. package/build/lib/src/index.js +3 -2
  47. package/build/lib/src/options.d.ts +1 -1
  48. package/build/lib/src/peer-generation/BuilderClass.d.ts +0 -2
  49. package/build/lib/src/peer-generation/BuilderClass.js +0 -8
  50. package/build/lib/src/peer-generation/LayoutManager.d.ts +10 -3
  51. package/build/lib/src/peer-generation/LayoutManager.js +3 -2
  52. package/build/lib/src/peer-generation/Materialized.d.ts +1 -1
  53. package/build/lib/src/peer-generation/Materialized.js +2 -2
  54. package/build/lib/src/peer-generation/PeerClass.d.ts +3 -8
  55. package/build/lib/src/peer-generation/PeerClass.js +0 -1
  56. package/build/lib/src/peer-generation/PeerFile.d.ts +1 -2
  57. package/build/lib/src/peer-generation/PeerFile.js +1 -1
  58. package/build/lib/src/peer-generation/PeerLibrary.d.ts +12 -7
  59. package/build/lib/src/peer-generation/PeerLibrary.js +129 -65
  60. package/build/lib/src/peer-generation/ReferenceResolver.d.ts +1 -1
  61. package/build/lib/src/peer-generation/ReferenceResolver.js +2 -2
  62. package/build/lib/src/peer-generation/idl/IdlNameConvertor.d.ts +1 -0
  63. package/build/lib/src/peer-generation/idl/IdlNameConvertor.js +6 -2
  64. package/build/lib/src/peer-generation/idl/common.d.ts +2 -1
  65. package/build/lib/src/peer-generation/idl/common.js +13 -2
  66. package/build/lib/src/peer-generation/isMaterialized.js +25 -8
  67. package/build/lib/src/peer-generation/unions.d.ts +3 -2
  68. package/build/lib/src/peer-generation/unions.js +6 -2
  69. package/build/lib/src/resolveNamedNode.d.ts +3 -0
  70. package/build/lib/src/resolveNamedNode.js +105 -0
  71. package/build/lib/src/util.d.ts +6 -0
  72. package/build/lib/src/util.js +33 -0
  73. package/build/lib/src/visitor.d.ts +0 -1
  74. package/build/lib/src/visitor.js +1 -7
  75. package/package.json +2 -2
  76. package/webidl2.js/LICENSE +21 -0
  77. package/webidl2.js/README.md +827 -0
  78. package/webidl2.js/dist/package.json +3 -0
  79. package/webidl2.js/dist/webidl2.js +35 -7
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
@@ -1661,7 +1661,7 @@ __webpack_require__.r(__webpack_exports__);
1661
1661
  * @param {string} identifier
1662
1662
  */
1663
1663
  function unescape(identifier) {
1664
- return identifier.startsWith("_") ? identifier.slice(1) : identifier;
1664
+ return identifier;
1665
1665
  }
1666
1666
 
1667
1667
  /** @typedef {'callbackInterface'|'dictionary'|'interface'|'mixin'|'namespace'} ExtendableInterfaces */
@@ -1829,13 +1829,13 @@ function return_type(tokeniser, typeName) {
1829
1829
  typ.tokens.closeRT = closeRT;
1830
1830
  return typ;
1831
1831
  } while (false);
1832
- const typ = _type_js__WEBPACK_IMPORTED_MODULE_0__.Type.parse(tokeniser, typeName || "return-type");
1832
+ const typ = Type.parse(tokeniser, typeName || "return-type");
1833
1833
  if (typ) {
1834
1834
  return typ;
1835
1835
  }
1836
1836
  const voidToken = tokeniser.consume("void");
1837
1837
  if (voidToken) {
1838
- const ret = new _type_js__WEBPACK_IMPORTED_MODULE_0__.Type({
1838
+ const ret = new Type({
1839
1839
  source: tokeniser.source,
1840
1840
  tokens: { base: voidToken },
1841
1841
  });
@@ -3109,9 +3109,8 @@ function generic_type(tokeniser, typeName) {
3109
3109
  tokeniser.error(`No opening bracket after ${base.value}`);
3110
3110
  switch (base.value) {
3111
3111
  case "Promise": {
3112
- if (tokeniser.probe("["))
3113
- tokeniser.error("Promise type cannot have extended attribute");
3114
3112
  const subtype =
3113
+ (0,_helpers_js__WEBPACK_IMPORTED_MODULE_1__.type_with_extended_attributes)(tokeniser, typeName) ||
3115
3114
  (0,_helpers_js__WEBPACK_IMPORTED_MODULE_1__.return_type)(tokeniser, typeName) ||
3116
3115
  tokeniser.error("Missing Promise subtype");
3117
3116
  ret.subtype.push(subtype);
@@ -3757,6 +3756,7 @@ function tokenise(str) {
3757
3756
  trivia,
3758
3757
  line,
3759
3758
  index,
3759
+ position: lastCharIndex,
3760
3760
  });
3761
3761
  trivia = "";
3762
3762
  lastCharIndex += punctuation.length;
@@ -3783,6 +3783,7 @@ function tokenise(str) {
3783
3783
  trivia,
3784
3784
  line,
3785
3785
  index,
3786
+ position: lastCharIndex,
3786
3787
  });
3787
3788
 
3788
3789
  return tokens;
@@ -3797,7 +3798,14 @@ function tokenise(str) {
3797
3798
  re.lastIndex = lastCharIndex;
3798
3799
  const result = re.exec(str);
3799
3800
  if (result) {
3800
- tokens.push({ type, value: result[0], trivia, line, index });
3801
+ tokens.push({
3802
+ type,
3803
+ value: result[0],
3804
+ trivia,
3805
+ line,
3806
+ index,
3807
+ position: lastCharIndex,
3808
+ });
3801
3809
  if (!noFlushTrivia) {
3802
3810
  trivia = "";
3803
3811
  }
@@ -4251,7 +4259,8 @@ function* checkInterfaceMemberDuplication(defs, i) {
4251
4259
 
4252
4260
  __webpack_require__.r(__webpack_exports__);
4253
4261
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4254
- /* harmony export */ parse: () => (/* binding */ parse)
4262
+ /* harmony export */ parse: () => (/* binding */ parse),
4263
+ /* harmony export */ parseType: () => (/* binding */ parseType)
4255
4264
  /* harmony export */ });
4256
4265
  /* harmony import */ var _tokeniser_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./tokeniser.js */ "./lib/tokeniser.js");
4257
4266
  /* harmony import */ var _productions_enum_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./productions/enum.js */ "./lib/productions/enum.js");
@@ -4367,6 +4376,20 @@ function parse(str, options = {}) {
4367
4376
  return parseByTokens(tokeniser, options);
4368
4377
  }
4369
4378
 
4379
+ /**
4380
+ * @param {string} str
4381
+ * @param {string} fileName
4382
+ */
4383
+ function parseType(str, fileName) {
4384
+ const tokeniser = new _tokeniser_js__WEBPACK_IMPORTED_MODULE_0__.Tokeniser(str);
4385
+ // @ts-ignore (See Tokeniser.source in supplement.d.ts)
4386
+ tokeniser.source.name = fileName;
4387
+ return (
4388
+ (0,_productions_helpers_js__WEBPACK_IMPORTED_MODULE_15__.type_with_extended_attributes)(tokeniser, "type") ||
4389
+ (0,_productions_helpers_js__WEBPACK_IMPORTED_MODULE_15__.return_type)(tokeniser, "return-type")
4390
+ );
4391
+ }
4392
+
4370
4393
 
4371
4394
  /***/ }),
4372
4395
 
@@ -4516,6 +4539,8 @@ function write(ast, { templates: ts = templates } = {}) {
4516
4539
  /******/
4517
4540
  /************************************************************************/
4518
4541
  var __webpack_exports__ = {};
4542
+ // This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk.
4543
+ (() => {
4519
4544
  /*!******************!*\
4520
4545
  !*** ./index.js ***!
4521
4546
  \******************/
@@ -4523,6 +4548,7 @@ __webpack_require__.r(__webpack_exports__);
4523
4548
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4524
4549
  /* harmony export */ WebIDLParseError: () => (/* reexport safe */ _lib_tokeniser_js__WEBPACK_IMPORTED_MODULE_3__.WebIDLParseError),
4525
4550
  /* harmony export */ parse: () => (/* reexport safe */ _lib_webidl2_js__WEBPACK_IMPORTED_MODULE_0__.parse),
4551
+ /* harmony export */ parseType: () => (/* reexport safe */ _lib_webidl2_js__WEBPACK_IMPORTED_MODULE_0__.parseType),
4526
4552
  /* harmony export */ validate: () => (/* reexport safe */ _lib_validator_js__WEBPACK_IMPORTED_MODULE_2__.validate),
4527
4553
  /* harmony export */ write: () => (/* reexport safe */ _lib_writer_js__WEBPACK_IMPORTED_MODULE_1__.write)
4528
4554
  /* harmony export */ });
@@ -4541,6 +4567,8 @@ __webpack_require__.r(__webpack_exports__);
4541
4567
 
4542
4568
  if (false) {}
4543
4569
 
4570
+ })();
4571
+
4544
4572
  /******/ return __webpack_exports__;
4545
4573
  /******/ })()
4546
4574
  ;