@idlizer/core 2.1.10-arktscgen-5 → 2.1.10-arktscgen-7

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 (104) hide show
  1. package/build/lib/src/Language.js +1 -1
  2. package/build/lib/src/LanguageWriters/ArgConvertors.d.ts +16 -6
  3. package/build/lib/src/LanguageWriters/ArgConvertors.js +80 -92
  4. package/build/lib/src/LanguageWriters/LanguageWriter.d.ts +8 -7
  5. package/build/lib/src/LanguageWriters/LanguageWriter.js +35 -22
  6. package/build/lib/src/LanguageWriters/common.d.ts +1 -0
  7. package/build/lib/src/LanguageWriters/common.js +2 -1
  8. package/build/lib/src/LanguageWriters/convertors/CppConvertors.d.ts +7 -1
  9. package/build/lib/src/LanguageWriters/convertors/CppConvertors.js +53 -15
  10. package/build/lib/src/LanguageWriters/convertors/ETSConvertors.d.ts +1 -0
  11. package/build/lib/src/LanguageWriters/convertors/ETSConvertors.js +10 -8
  12. package/build/lib/src/LanguageWriters/convertors/InteropConvertors.js +1 -1
  13. package/build/lib/src/LanguageWriters/convertors/TSConvertors.js +26 -14
  14. package/build/lib/src/LanguageWriters/index.d.ts +4 -3
  15. package/build/lib/src/LanguageWriters/index.js +9 -11
  16. package/build/lib/src/LanguageWriters/nameConvertor.d.ts +2 -0
  17. package/build/lib/src/LanguageWriters/nameConvertor.js +11 -0
  18. package/build/lib/src/LanguageWriters/writers/CppLanguageWriter.js +1 -1
  19. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.d.ts +2 -22
  20. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.js +34 -113
  21. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.d.ts +3 -0
  22. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.js +33 -9
  23. package/build/lib/src/config.d.ts +2 -1461
  24. package/build/lib/src/config.js +16 -32
  25. package/build/lib/src/configMerge.d.ts +3 -0
  26. package/build/lib/src/configMerge.js +63 -0
  27. package/build/lib/src/diagnostictypes.d.ts +1 -5
  28. package/build/lib/src/diagnostictypes.js +1 -27
  29. package/build/lib/src/from-idl/DtsPrinter.js +12 -5
  30. package/build/lib/src/from-idl/IDLLinter.d.ts +3 -4
  31. package/build/lib/src/from-idl/IDLLinter.js +30 -32
  32. package/build/lib/src/from-idl/deserialize.d.ts +3 -4
  33. package/build/lib/src/from-idl/deserialize.js +29 -641
  34. package/build/lib/src/from-idl/parser.d.ts +20 -2
  35. package/build/lib/src/from-idl/parser.js +97 -29
  36. package/build/lib/src/idl/builders.d.ts +43 -0
  37. package/build/lib/src/idl/builders.js +135 -0
  38. package/build/lib/src/idl/discriminators.d.ts +53 -0
  39. package/build/lib/src/idl/discriminators.js +232 -0
  40. package/build/lib/src/idl/dump.d.ts +48 -0
  41. package/build/lib/src/idl/dump.js +327 -0
  42. package/build/lib/src/idl/index.d.ts +9 -0
  43. package/build/lib/src/idl/index.js +23 -0
  44. package/build/lib/src/idl/keywords.d.ts +2 -0
  45. package/build/lib/src/{options.js → idl/keywords.js} +7 -3
  46. package/build/lib/src/idl/node.d.ts +233 -0
  47. package/build/lib/src/idl/node.js +103 -0
  48. package/build/lib/src/idl/stdlib.d.ts +34 -0
  49. package/build/lib/src/idl/stdlib.js +54 -0
  50. package/build/lib/src/idl/utils.d.ts +44 -0
  51. package/build/lib/src/idl/utils.js +215 -0
  52. package/build/lib/src/idl/visitors.d.ts +15 -0
  53. package/build/lib/src/idl/visitors.js +593 -0
  54. package/build/lib/src/index.d.ts +4 -2
  55. package/build/lib/src/index.js +5 -3
  56. package/build/lib/src/inputPaths.d.ts +11 -0
  57. package/build/lib/src/inputPaths.js +81 -0
  58. package/build/lib/src/languageSpecificKeywords.d.ts +0 -1
  59. package/build/lib/src/languageSpecificKeywords.js +0 -5
  60. package/build/lib/src/peer-generation/LayoutManager.d.ts +1 -1
  61. package/build/lib/src/peer-generation/Materialized.d.ts +8 -2
  62. package/build/lib/src/peer-generation/Materialized.js +24 -12
  63. package/build/lib/src/peer-generation/PeerLibrary.d.ts +10 -15
  64. package/build/lib/src/peer-generation/PeerLibrary.js +35 -215
  65. package/build/lib/src/peer-generation/ReferenceResolver.d.ts +6 -1
  66. package/build/lib/src/peer-generation/ReferenceResolver.js +93 -2
  67. package/build/lib/src/peer-generation/idl/common.d.ts +6 -2
  68. package/build/lib/src/peer-generation/idl/common.js +7 -7
  69. package/build/lib/src/peer-generation/isMaterialized.js +2 -3
  70. package/build/lib/src/peer-generation/modules.js +2 -0
  71. package/build/lib/src/peer-generation/toDeclaration.d.ts +4 -0
  72. package/build/lib/src/peer-generation/toDeclaration.js +53 -0
  73. package/build/lib/src/peer-generation/unions.d.ts +1 -1
  74. package/build/lib/src/peer-generation/unions.js +15 -7
  75. package/build/lib/src/resolveNamedNode.d.ts +1 -0
  76. package/build/lib/src/resolveNamedNode.js +7 -0
  77. package/build/lib/src/transformers/FqnTransformer.d.ts +1 -1
  78. package/build/lib/src/transformers/FqnTransformer.js +20 -12
  79. package/build/lib/src/transformers/GenericTransformer.d.ts +4 -3
  80. package/build/lib/src/transformers/GenericTransformer.js +252 -158
  81. package/build/lib/src/transformers/IdlTransformer.d.ts +6 -0
  82. package/build/lib/src/transformers/IdlTransformer.js +7 -0
  83. package/build/lib/src/transformers/NullTransformer.d.ts +1 -1
  84. package/build/lib/src/transformers/NullTransformer.js +27 -21
  85. package/build/lib/src/transformers/OnSerializeTransformer.d.ts +1 -1
  86. package/build/lib/src/transformers/OnSerializeTransformer.js +28 -13
  87. package/build/lib/src/util.d.ts +5 -0
  88. package/build/lib/src/util.js +25 -0
  89. package/package.json +6 -7
  90. package/build/lib/src/LanguageWriters/convertors/JavaConvertors.d.ts +0 -37
  91. package/build/lib/src/LanguageWriters/convertors/JavaConvertors.js +0 -210
  92. package/build/lib/src/LanguageWriters/writers/JavaLanguageWriter.d.ts +0 -85
  93. package/build/lib/src/LanguageWriters/writers/JavaLanguageWriter.js +0 -306
  94. package/build/lib/src/from-idl/webidl2-utils.d.ts +0 -21
  95. package/build/lib/src/from-idl/webidl2-utils.js +0 -87
  96. package/build/lib/src/idl.d.ts +0 -444
  97. package/build/lib/src/idl.js +0 -1385
  98. package/build/lib/src/idlize.d.ts +0 -25
  99. package/build/lib/src/idlize.js +0 -198
  100. package/build/lib/src/options.d.ts +0 -13
  101. package/build/lib/src/peer-generation/BuilderClass.d.ts +0 -20
  102. package/build/lib/src/peer-generation/BuilderClass.js +0 -68
  103. package/webidl2.js/dist/webidl2.js +0 -4622
  104. package/webidl2.js/package.json +0 -55
@@ -16,7 +16,7 @@ import * as idl from '../../idl';
16
16
  import { isOptionalType } from '../../idl';
17
17
  import { Language } from '../../Language';
18
18
  import { IndentedPrinter } from "../../IndentedPrinter";
19
- import { AssignStatement, BlockStatement, DelegationType, ExpressionStatement, FieldModifier, IfStatement, LambdaExpression, LanguageWriter, Method, MethodModifier, MethodSignature, NamedMethodSignature, NaryOpExpression, ReturnStatement, StringExpression } from "../LanguageWriter";
19
+ import { ACCESS_MODIFIERS_SET, AssignStatement, BlockStatement, DelegationType, ExpressionStatement, FieldModifier, IfStatement, LambdaExpression, LanguageWriter, Method, MethodModifier, MethodSignature, NamedMethodSignature, NaryOpExpression, ReturnStatement, StringExpression } from "../LanguageWriter";
20
20
  import { RuntimeType } from "../common";
21
21
  import { rightmostIndexOf } from "../../util";
22
22
  import { TSKeywords } from '../../languageSpecificKeywords';
@@ -67,7 +67,7 @@ class TSThrowErrorStatement {
67
67
  this.message = message;
68
68
  }
69
69
  write(writer) {
70
- writer.print(`throw new Error("${this.message}")`);
70
+ writer.print(`throw new Error('${this.message}')`);
71
71
  }
72
72
  }
73
73
  export class TSReturnStatement extends ReturnStatement {
@@ -121,6 +121,7 @@ export class TsTupleAllocStatement {
121
121
  export class TSLanguageWriter extends LanguageWriter {
122
122
  constructor(printer, resolver, typeConvertor, language = Language.TS) {
123
123
  super(printer, resolver, language);
124
+ this.writingClassBody = false;
124
125
  this.typeConvertor = typeConvertor;
125
126
  }
126
127
  maybeSemicolon() { return ""; }
@@ -159,7 +160,7 @@ export class TSLanguageWriter extends LanguageWriter {
159
160
  let abstractClause = isAbstract ? ` abstract` : '';
160
161
  this.printer.print(`export${declaredClause}${abstractClause} class ${name}${genericsClause}${extendsClause}${implementsClause} {`);
161
162
  this.pushIndent();
162
- op(this);
163
+ this.classOp(() => op(this));
163
164
  this.popIndent();
164
165
  this.printer.print(`}`);
165
166
  }
@@ -201,7 +202,7 @@ export class TSLanguageWriter extends LanguageWriter {
201
202
  value = member.alias;
202
203
  }
203
204
  else {
204
- value = `${member.stringId != undefined ? `"${member.stringId}"` : `${member.numberId}`}`;
205
+ value = `${member.stringId != undefined ? `'${member.stringId}'` : `${member.numberId}`}`;
205
206
  }
206
207
  const maybeComma = index < members.length - 1 ? "," : "";
207
208
  this.printer.print(`${member.name} = ${value}${maybeComma}`);
@@ -210,6 +211,11 @@ export class TSLanguageWriter extends LanguageWriter {
210
211
  this.printer.print("}");
211
212
  }
212
213
  writeFieldDeclaration(name, type, modifiers, optional, initExpr) {
214
+ var _a;
215
+ if (this.writingClassBody && !(modifiers === null || modifiers === void 0 ? void 0 : modifiers.some(m => ACCESS_MODIFIERS_SET.has(m)))) {
216
+ modifiers = (_a = modifiers === null || modifiers === void 0 ? void 0 : modifiers.slice()) !== null && _a !== void 0 ? _a : [];
217
+ modifiers.unshift(FieldModifier.PUBLIC);
218
+ }
213
219
  let prefix = this.makeFieldModifiersList(modifiers);
214
220
  if (prefix)
215
221
  prefix += " ";
@@ -300,7 +306,7 @@ export class TSLanguageWriter extends LanguageWriter {
300
306
  for (let i = 0; i < importedFeatures.length; i++) {
301
307
  importNodes.push(importedFeatures[i] + (aliases[i] ? ` as ${aliases[i]}` : ``));
302
308
  }
303
- this.writeExpressionStatement(this.makeString(`import { ${importNodes.join(', ')} } from "${moduleName}"`));
309
+ this.writeExpressionStatement(this.makeString(`import { ${importNodes.join(', ')} } from '${moduleName}'`));
304
310
  }
305
311
  writeDeclaration(name, signature, needReturn, needBracket, modifiers, generics) {
306
312
  let prefix = !modifiers ? undefined : this.supportedModifiers
@@ -354,6 +360,11 @@ export class TSLanguageWriter extends LanguageWriter {
354
360
  var _a;
355
361
  return new TSCastExpression(value, this.getNodeName(node), (_a = options === null || options === void 0 ? void 0 : options.unsafe) !== null && _a !== void 0 ? _a : false);
356
362
  }
363
+ instanceOf(value, type) {
364
+ return idl.IDLContainerUtils.isSequence(type)
365
+ ? this.makeString(`Array.isArray(${value})`)
366
+ : super.instanceOf(value, type);
367
+ }
357
368
  typeInstanceOf(type, value, members) {
358
369
  if (idl.isInterface(type)) {
359
370
  if (idl.isInterfaceSubkind(type)) {
@@ -435,21 +446,34 @@ export class TSLanguageWriter extends LanguageWriter {
435
446
  }
436
447
  i32FromEnum(value, enumEntry) {
437
448
  const enumName = this.getNodeName(enumEntry);
438
- if (idl.isEnum(enumEntry) && idl.isStringEnum(enumEntry)) {
439
- return this.makeString(`Object.values(${enumName}).indexOf(${value.asString()})`);
449
+ if (idl.isStringEnum(enumEntry)) {
450
+ let extractorStatement = this.makeString(`Object.values(${enumName}).indexOf(${value.asString()})`);
451
+ if (enumEntry.elements.some(it => idl.hasExtAttribute(it, idl.IDLExtendedAttributes.OriginalEnumMemberName))) {
452
+ extractorStatement = this.makeNaryOp('%', [
453
+ extractorStatement,
454
+ this.makeString(enumEntry.elements.length.toString())
455
+ ]);
456
+ }
457
+ return extractorStatement;
440
458
  }
441
459
  return this.makeString(`${value.asString()}.valueOf()`);
442
460
  }
443
- castToBoolean(value) { return `+${value}`; }
461
+ castToBoolean(value) { return `!!${value}`; }
444
462
  makeCallIsObject(value) {
445
463
  return this.makeString(`${value} instanceof Object`);
446
464
  }
447
465
  escapeKeyword(keyword) {
448
- return TSKeywords.has(keyword) ? keyword + "_" : keyword;
466
+ return TSKeywords.has(keyword) ? keyword + "Val" : keyword;
449
467
  }
450
468
  discriminate(value, index, type, runtimeTypes) {
451
469
  const runtimeTypeList = runtimeTypes.map(ty => "RuntimeType." + RuntimeType[ty]).join(", ");
452
470
  return `[${runtimeTypeList}].includes(runtimeType(${value}))`;
453
471
  }
472
+ classOp(op) {
473
+ const old = this.writingClassBody;
474
+ this.writingClassBody = true;
475
+ op();
476
+ this.writingClassBody = old;
477
+ }
454
478
  }
455
479
  //# sourceMappingURL=TsLanguageWriter.js.map