@idlizer/core 2.1.0 → 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 (82) hide show
  1. package/build/lib/src/LanguageWriters/ArgConvertors.d.ts +15 -2
  2. package/build/lib/src/LanguageWriters/ArgConvertors.js +93 -33
  3. package/build/lib/src/LanguageWriters/LanguageWriter.d.ts +34 -14
  4. package/build/lib/src/LanguageWriters/LanguageWriter.js +29 -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 +25 -15
  9. package/build/lib/src/LanguageWriters/convertors/ETSConvertors.js +7 -18
  10. package/build/lib/src/LanguageWriters/convertors/InteropConvertors.d.ts +4 -2
  11. package/build/lib/src/LanguageWriters/convertors/InteropConvertors.js +13 -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 +49 -29
  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 +21 -10
  19. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.js +56 -65
  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 +16 -10
  23. package/build/lib/src/LanguageWriters/writers/CppLanguageWriter.js +18 -27
  24. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.d.ts +14 -9
  25. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.js +18 -21
  26. package/build/lib/src/LanguageWriters/writers/JavaLanguageWriter.d.ts +11 -7
  27. package/build/lib/src/LanguageWriters/writers/JavaLanguageWriter.js +42 -18
  28. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.d.ts +14 -6
  29. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.js +49 -44
  30. package/build/lib/src/LibraryInterface.d.ts +1 -5
  31. package/build/lib/src/config.d.ts +1029 -66
  32. package/build/lib/src/config.js +15 -2
  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 +32 -20
  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 +28 -18
  42. package/build/lib/src/idl.js +376 -111
  43. package/build/lib/src/idlize.d.ts +3 -1
  44. package/build/lib/src/idlize.js +85 -28
  45. package/build/lib/src/index.d.ts +6 -3
  46. package/build/lib/src/index.js +5 -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 -9
  59. package/build/lib/src/peer-generation/PeerLibrary.js +136 -71
  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/isEnumType.d.ts +5 -0
  67. package/build/lib/src/peer-generation/isEnumType.js +29 -0
  68. package/build/lib/src/peer-generation/isMaterialized.js +25 -8
  69. package/build/lib/src/peer-generation/modules.d.ts +10 -0
  70. package/build/lib/src/peer-generation/modules.js +38 -0
  71. package/build/lib/src/peer-generation/unions.d.ts +3 -2
  72. package/build/lib/src/peer-generation/unions.js +6 -2
  73. package/build/lib/src/resolveNamedNode.d.ts +3 -0
  74. package/build/lib/src/resolveNamedNode.js +105 -0
  75. package/build/lib/src/util.d.ts +7 -0
  76. package/build/lib/src/util.js +39 -0
  77. package/build/lib/src/visitor.d.ts +0 -1
  78. package/build/lib/src/visitor.js +1 -7
  79. package/package.json +2 -2
  80. package/webidl2.js/dist/webidl2.js +35 -7
  81. package/build/lib/src/configMerge.d.ts +0 -2
  82. package/build/lib/src/configMerge.js +0 -42
@@ -45,6 +45,7 @@ export declare enum IDLExtendedAttributes {
45
45
  DtsTag = "DtsTag",
46
46
  Entity = "Entity",
47
47
  Import = "Import",
48
+ DefaultExport = "DefaultExport",
48
49
  IndexSignature = "IndexSignature",
49
50
  Interfaces = "Interfaces",
50
51
  NativeModule = "NativeModule",
@@ -78,6 +79,7 @@ export interface IDLNode {
78
79
  export interface IDLFile extends IDLNode {
79
80
  packageClause: string[];
80
81
  entries: IDLEntry[];
82
+ text?: string;
81
83
  fileName?: string;
82
84
  }
83
85
  export interface IDLNamedNode extends IDLNode {
@@ -179,6 +181,7 @@ export interface IDLMethod extends IDLFunction, IDLNamedNode {
179
181
  }
180
182
  export interface IDLCallable extends IDLFunction {
181
183
  kind: IDLKind.Callable;
184
+ returnType: IDLType;
182
185
  isStatic: boolean;
183
186
  }
184
187
  export interface IDLConstructor extends IDLSignature {
@@ -213,7 +216,10 @@ export interface IDLCallback extends IDLEntry, IDLSignature {
213
216
  kind: IDLKind.Callback;
214
217
  returnType: IDLType;
215
218
  }
216
- export declare function forEachChild(node: IDLNode, cbEnter: (entry: IDLNode) => void, cbLeave?: (entry: IDLNode) => void): void;
219
+ type IDLNodeVisitorVoid = (node: IDLNode) => void;
220
+ type IDLNodeVisitorValue = (node: IDLNode) => () => void;
221
+ type IDLNodeVisitor = IDLNodeVisitorVoid | IDLNodeVisitorValue;
222
+ export declare function forEachChild(node: IDLNode, cbEnter: IDLNodeVisitor, cbLeave?: (entry: IDLNode) => void): void;
217
223
  export declare function isNamedNode(type: IDLNode): type is IDLNamedNode;
218
224
  export declare function forceAsNamedNode(type: IDLNode): IDLNamedNode;
219
225
  export declare function isFile(node: IDLNode): node is IDLFile;
@@ -245,7 +251,7 @@ export declare function isNamespace(node: IDLNode): node is IDLNamespace;
245
251
  export declare function isSyntheticEntry(node: IDLNode): boolean;
246
252
  export declare function isOptionalType(type: IDLNode): type is IDLOptionalType;
247
253
  export declare function isVersion(node: IDLNode): node is IDLVersion;
248
- export declare function createOptionalType(element: IDLType): IDLOptionalType;
254
+ export declare function createOptionalType(element: IDLType, nodeInitializer?: IDLNodeInitializer): IDLOptionalType;
249
255
  /**
250
256
  * This placeholder is used when a class has no superclass.
251
257
  * Examples:
@@ -280,8 +286,8 @@ export declare const IDLThisType: IDLPrimitiveType;
280
286
  export declare const IDLDate: IDLPrimitiveType;
281
287
  export declare const IDLBufferType: IDLPrimitiveType;
282
288
  export declare const IDLUint8ArrayType: IDLContainerType;
289
+ export declare const IDLSerializerBuffer: IDLPrimitiveType;
283
290
  export declare const IDLFunctionType: IDLPrimitiveType;
284
- export declare const IDLLengthType: IDLPrimitiveType;
285
291
  export declare const IDLCustomObjectType: IDLPrimitiveType;
286
292
  export declare const IDLInteropReturnBufferType: IDLPrimitiveType;
287
293
  export type IDLNodeInitializer = {
@@ -289,25 +295,27 @@ export type IDLNodeInitializer = {
289
295
  fileName?: string;
290
296
  documentation?: string;
291
297
  };
292
- export declare function createNamespace(name: string, extendedAttributes?: IDLExtendedAttribute[], fileName?: string): IDLNamespace;
298
+ export declare function createNamespace(name: string, members?: IDLEntry[], nodeInitializer?: IDLNodeInitializer): IDLNamespace;
293
299
  export declare function linkParentBack<T extends IDLNode>(node: T): T;
294
- export declare function getNamespacesPathFor(entry: IDLEntry): IDLNamespace[];
295
- export declare function getFileFor(entry: IDLNode): IDLFile | undefined;
296
- export declare function isEqualByQualifedName(a?: IDLEntry, b?: IDLEntry): boolean;
297
- export declare function getPackageClause(entry: IDLFile | IDLEntry): string[];
298
- export declare function getPackageName(entry: IDLFile | IDLEntry): string;
300
+ export declare function getNamespacesPathFor(node: IDLNode): IDLNamespace[];
301
+ export declare function getFileFor(node: IDLNode): IDLFile | undefined;
302
+ export declare function isEqualByQualifedName(a?: IDLNamedNode, b?: IDLNamedNode, pattern?: QNPattern): boolean;
303
+ export declare function getPackageClause(node: IDLNode): string[];
304
+ export declare function getPackageName(node: IDLNode): string;
299
305
  export declare function isInPackage(entry: IDLEntry | IDLFile, packageName: string, exactMatch?: boolean): boolean;
300
306
  export declare function getNamespaceName(a: IDLEntry): string;
301
- export declare function getFQName(a: IDLEntry): string;
302
- export declare function createVersion(value: string[], extendedAttributes?: IDLExtendedAttribute[], fileName?: string): IDLVersion;
307
+ export type QNPattern = "package.namespace.name" | "namespace.name" | "name";
308
+ export declare function getQualifiedName(a: IDLNode, pattern: QNPattern): string;
309
+ export declare function getFQName(a: IDLNode): string;
310
+ export declare function createVersion(value: string[], nodeInitializer?: IDLNodeInitializer): IDLVersion;
303
311
  export declare function fetchNamespaceFrom(pointOfView?: IDLNode): IDLNamespace | undefined;
304
- export declare function createReferenceType(name: string, typeArguments?: IDLType[]): IDLReferenceType;
305
- export declare function createReferenceType(source: IDLEntry, typeArguments?: IDLType[]): IDLReferenceType;
306
- export declare function createUnspecifiedGenericType(name: string, typeArguments: IDLType[]): IDLUnspecifiedGenericType;
312
+ export declare function createReferenceType(name: string, typeArguments?: IDLType[], nodeInitializer?: IDLNodeInitializer): IDLReferenceType;
313
+ export declare function createReferenceType(source: IDLEntry, typeArguments?: IDLType[], nodeInitializer?: IDLNodeInitializer): IDLReferenceType;
314
+ export declare function createUnspecifiedGenericType(name: string, typeArguments: IDLType[], nodeInitializer?: IDLNodeInitializer): IDLUnspecifiedGenericType;
307
315
  export declare function entityToType(entity: IDLNode): IDLType;
308
- export declare function createContainerType(container: IDLContainerKind, element: IDLType[]): IDLContainerType;
309
- export declare function createUnionType(types: IDLType[], name?: string): IDLUnionType;
310
- export declare function createFile(entries: IDLEntry[], fileName?: string, packageClause?: string[]): IDLFile;
316
+ export declare function createContainerType(container: IDLContainerKind, element: IDLType[], nodeInitializer?: IDLNodeInitializer): IDLContainerType;
317
+ export declare function createUnionType(types: IDLType[], name?: string, nodeInitializer?: IDLNodeInitializer): IDLUnionType;
318
+ export declare function createFile(entries: IDLEntry[], fileName?: string, packageClause?: string[], nodeInitializer?: IDLNodeInitializer): IDLFile;
311
319
  export declare function createImport(clause: string[], name?: string, nodeInitializer?: IDLNodeInitializer): IDLImport;
312
320
  export declare function createEnum(name: string, elements: IDLEnumMember[], nodeInitializer: IDLNodeInitializer): IDLEnum;
313
321
  export declare function createEnumMember(name: string, parent: IDLEnum, type: IDLPrimitiveType, initializer: number | string | undefined, nodeInitializer?: IDLNodeInitializer): IDLEnumMember;
@@ -328,9 +336,10 @@ export type IDLCallableInitializer = {
328
336
  export declare function createCallable(name: string, parameters: IDLParameter[], returnType: IDLType, callableInitializer: IDLCallableInitializer, nodeInitializer: IDLNodeInitializer, typeParameters?: string[]): IDLCallable;
329
337
  export declare function createConstructor(parameters: IDLParameter[], returnType: IDLType | undefined, nodeInitializer?: IDLNodeInitializer): IDLConstructor;
330
338
  export declare function createCallback(name: string, parameters: IDLParameter[], returnType: IDLType, nodeInitializer?: IDLNodeInitializer, typeParameters?: string[]): IDLCallback;
331
- export declare function createTypeParameterReference(name: string): IDLTypeParameterType;
339
+ export declare function createTypeParameterReference(name: string, nodeInitializer?: IDLNodeInitializer): IDLTypeParameterType;
332
340
  export declare function createTypedef(name: string, type: IDLType, typeParameters?: string[], nodeInitializer?: IDLNodeInitializer): IDLTypedef;
333
341
  export declare function createConstant(name: string, type: IDLType, value: string, nodeInitializer?: IDLNodeInitializer): IDLConstant;
342
+ export declare function clone<T extends IDLNode>(node: T): T;
334
343
  export declare function escapeIDLKeyword(name: string): string;
335
344
  export declare function unescapeKeyword(name: string): string;
336
345
  type PrintedIndentInc = "[[indent-inc]]";
@@ -357,6 +366,7 @@ export declare function printCallback(idl: IDLCallback): PrintedLine[];
357
366
  export declare function printScoped(idl: IDLEntry): PrintedLine[];
358
367
  export declare function printInterface(idl: IDLInterface): PrintedLine[];
359
368
  export declare function getSuperType(idl: IDLInterface): IDLReferenceType | undefined;
369
+ export declare function getSuperTypes(idl: IDLInterface): IDLReferenceType[] | undefined;
360
370
  export declare function hasSuperType(idl: IDLInterface): boolean;
361
371
  export declare function printEnumMember(idl: IDLEnumMember): PrintedLine[];
362
372
  export declare function printEnum(idl: IDLEnum, skipInitializers: boolean): PrintedLine[];