@idlizer/core 2.1.2 → 2.1.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 (80) hide show
  1. package/build/lib/src/LanguageWriters/ArgConvertors.d.ts +3 -4
  2. package/build/lib/src/LanguageWriters/ArgConvertors.js +43 -32
  3. package/build/lib/src/LanguageWriters/LanguageWriter.d.ts +35 -17
  4. package/build/lib/src/LanguageWriters/LanguageWriter.js +30 -56
  5. package/build/lib/src/LanguageWriters/convertors/CJConvertors.d.ts +3 -1
  6. package/build/lib/src/LanguageWriters/convertors/CJConvertors.js +32 -11
  7. package/build/lib/src/LanguageWriters/convertors/CppConvertors.d.ts +5 -2
  8. package/build/lib/src/LanguageWriters/convertors/CppConvertors.js +71 -62
  9. package/build/lib/src/LanguageWriters/convertors/ETSConvertors.d.ts +1 -1
  10. package/build/lib/src/LanguageWriters/convertors/ETSConvertors.js +9 -19
  11. package/build/lib/src/LanguageWriters/convertors/InteropConvertors.d.ts +4 -2
  12. package/build/lib/src/LanguageWriters/convertors/InteropConvertors.js +10 -3
  13. package/build/lib/src/LanguageWriters/convertors/JavaConvertors.d.ts +2 -1
  14. package/build/lib/src/LanguageWriters/convertors/JavaConvertors.js +24 -4
  15. package/build/lib/src/LanguageWriters/convertors/TSConvertors.d.ts +8 -4
  16. package/build/lib/src/LanguageWriters/convertors/TSConvertors.js +87 -33
  17. package/build/lib/src/LanguageWriters/nameConvertor.d.ts +3 -1
  18. package/build/lib/src/LanguageWriters/nameConvertor.js +5 -1
  19. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.d.ts +19 -11
  20. package/build/lib/src/LanguageWriters/writers/CJLanguageWriter.js +34 -47
  21. package/build/lib/src/LanguageWriters/writers/CLikeLanguageWriter.d.ts +4 -1
  22. package/build/lib/src/LanguageWriters/writers/CLikeLanguageWriter.js +1 -1
  23. package/build/lib/src/LanguageWriters/writers/CppLanguageWriter.d.ts +9 -9
  24. package/build/lib/src/LanguageWriters/writers/CppLanguageWriter.js +15 -24
  25. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.d.ts +17 -8
  26. package/build/lib/src/LanguageWriters/writers/ETSLanguageWriter.js +48 -23
  27. package/build/lib/src/LanguageWriters/writers/JavaLanguageWriter.d.ts +4 -6
  28. package/build/lib/src/LanguageWriters/writers/JavaLanguageWriter.js +15 -14
  29. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.d.ts +13 -8
  30. package/build/lib/src/LanguageWriters/writers/TsLanguageWriter.js +33 -52
  31. package/build/lib/src/LibraryInterface.d.ts +1 -4
  32. package/build/lib/src/config.d.ts +813 -110
  33. package/build/lib/src/config.js +25 -3
  34. package/build/lib/src/configDescriber.d.ts +31 -4
  35. package/build/lib/src/configDescriber.js +101 -3
  36. package/build/lib/src/from-idl/DtsPrinter.js +31 -18
  37. package/build/lib/src/from-idl/IDLLinter.d.ts +40 -7
  38. package/build/lib/src/from-idl/IDLLinter.js +211 -25
  39. package/build/lib/src/from-idl/common.js +1 -1
  40. package/build/lib/src/from-idl/deserialize.d.ts +10 -1
  41. package/build/lib/src/from-idl/deserialize.js +486 -352
  42. package/build/lib/src/idl.d.ts +29 -19
  43. package/build/lib/src/idl.js +404 -119
  44. package/build/lib/src/idlize.d.ts +2 -1
  45. package/build/lib/src/idlize.js +82 -26
  46. package/build/lib/src/index.d.ts +4 -3
  47. package/build/lib/src/index.js +3 -2
  48. package/build/lib/src/options.d.ts +1 -1
  49. package/build/lib/src/peer-generation/BuilderClass.d.ts +0 -2
  50. package/build/lib/src/peer-generation/BuilderClass.js +0 -8
  51. package/build/lib/src/peer-generation/LayoutManager.d.ts +10 -3
  52. package/build/lib/src/peer-generation/LayoutManager.js +3 -2
  53. package/build/lib/src/peer-generation/Materialized.d.ts +1 -1
  54. package/build/lib/src/peer-generation/Materialized.js +3 -3
  55. package/build/lib/src/peer-generation/PeerClass.d.ts +3 -8
  56. package/build/lib/src/peer-generation/PeerClass.js +0 -1
  57. package/build/lib/src/peer-generation/PeerFile.d.ts +1 -2
  58. package/build/lib/src/peer-generation/PeerFile.js +1 -1
  59. package/build/lib/src/peer-generation/PeerLibrary.d.ts +12 -7
  60. package/build/lib/src/peer-generation/PeerLibrary.js +131 -67
  61. package/build/lib/src/peer-generation/ReferenceResolver.d.ts +1 -1
  62. package/build/lib/src/peer-generation/ReferenceResolver.js +2 -2
  63. package/build/lib/src/peer-generation/idl/IdlNameConvertor.d.ts +1 -0
  64. package/build/lib/src/peer-generation/idl/IdlNameConvertor.js +6 -2
  65. package/build/lib/src/peer-generation/idl/common.d.ts +3 -1
  66. package/build/lib/src/peer-generation/idl/common.js +21 -4
  67. package/build/lib/src/peer-generation/isMaterialized.js +28 -7
  68. package/build/lib/src/peer-generation/unions.d.ts +3 -2
  69. package/build/lib/src/peer-generation/unions.js +7 -3
  70. package/build/lib/src/resolveNamedNode.d.ts +3 -0
  71. package/build/lib/src/resolveNamedNode.js +105 -0
  72. package/build/lib/src/util.d.ts +8 -1
  73. package/build/lib/src/util.js +41 -3
  74. package/build/lib/src/visitor.d.ts +2 -1
  75. package/build/lib/src/visitor.js +109 -7
  76. package/package.json +2 -2
  77. package/webidl2.js/LICENSE +21 -0
  78. package/webidl2.js/README.md +827 -0
  79. package/webidl2.js/dist/package.json +3 -0
  80. package/webidl2.js/dist/webidl2.js +93 -19
@@ -44,7 +44,9 @@ export declare enum IDLExtendedAttributes {
44
44
  DtsName = "DtsName",
45
45
  DtsTag = "DtsTag",
46
46
  Entity = "Entity",
47
+ Extends = "Extends",
47
48
  Import = "Import",
49
+ DefaultExport = "DefaultExport",
48
50
  IndexSignature = "IndexSignature",
49
51
  Interfaces = "Interfaces",
50
52
  NativeModule = "NativeModule",
@@ -78,6 +80,7 @@ export interface IDLNode {
78
80
  export interface IDLFile extends IDLNode {
79
81
  packageClause: string[];
80
82
  entries: IDLEntry[];
83
+ text?: string;
81
84
  fileName?: string;
82
85
  }
83
86
  export interface IDLNamedNode extends IDLNode {
@@ -179,6 +182,7 @@ export interface IDLMethod extends IDLFunction, IDLNamedNode {
179
182
  }
180
183
  export interface IDLCallable extends IDLFunction {
181
184
  kind: IDLKind.Callable;
185
+ returnType: IDLType;
182
186
  isStatic: boolean;
183
187
  }
184
188
  export interface IDLConstructor extends IDLSignature {
@@ -213,7 +217,10 @@ export interface IDLCallback extends IDLEntry, IDLSignature {
213
217
  kind: IDLKind.Callback;
214
218
  returnType: IDLType;
215
219
  }
216
- export declare function forEachChild(node: IDLNode, cbEnter: (entry: IDLNode) => void, cbLeave?: (entry: IDLNode) => void): void;
220
+ type IDLNodeVisitorVoid = (node: IDLNode) => void;
221
+ type IDLNodeVisitorValue = (node: IDLNode) => () => void;
222
+ type IDLNodeVisitor = IDLNodeVisitorVoid | IDLNodeVisitorValue;
223
+ export declare function forEachChild(node: IDLNode, cbEnter: IDLNodeVisitor, cbLeave?: (entry: IDLNode) => void): void;
217
224
  export declare function isNamedNode(type: IDLNode): type is IDLNamedNode;
218
225
  export declare function forceAsNamedNode(type: IDLNode): IDLNamedNode;
219
226
  export declare function isFile(node: IDLNode): node is IDLFile;
@@ -245,7 +252,7 @@ export declare function isNamespace(node: IDLNode): node is IDLNamespace;
245
252
  export declare function isSyntheticEntry(node: IDLNode): boolean;
246
253
  export declare function isOptionalType(type: IDLNode): type is IDLOptionalType;
247
254
  export declare function isVersion(node: IDLNode): node is IDLVersion;
248
- export declare function createOptionalType(element: IDLType): IDLOptionalType;
255
+ export declare function createOptionalType(element: IDLType, nodeInitializer?: IDLNodeInitializer): IDLOptionalType;
249
256
  /**
250
257
  * This placeholder is used when a class has no superclass.
251
258
  * Examples:
@@ -275,14 +282,13 @@ export declare const IDLStringType: IDLPrimitiveType;
275
282
  export declare const IDLAnyType: IDLPrimitiveType;
276
283
  export declare const IDLUndefinedType: IDLPrimitiveType;
277
284
  export declare const IDLUnknownType: IDLPrimitiveType;
278
- export declare const IDLObjectType: IDLReferenceType;
285
+ export declare const IDLObjectType: IDLPrimitiveType;
279
286
  export declare const IDLThisType: IDLPrimitiveType;
280
287
  export declare const IDLDate: IDLPrimitiveType;
281
288
  export declare const IDLBufferType: IDLPrimitiveType;
282
289
  export declare const IDLUint8ArrayType: IDLContainerType;
283
290
  export declare const IDLSerializerBuffer: IDLPrimitiveType;
284
291
  export declare const IDLFunctionType: IDLPrimitiveType;
285
- export declare const IDLLengthType: IDLPrimitiveType;
286
292
  export declare const IDLCustomObjectType: IDLPrimitiveType;
287
293
  export declare const IDLInteropReturnBufferType: IDLPrimitiveType;
288
294
  export type IDLNodeInitializer = {
@@ -290,25 +296,27 @@ export type IDLNodeInitializer = {
290
296
  fileName?: string;
291
297
  documentation?: string;
292
298
  };
293
- export declare function createNamespace(name: string, extendedAttributes?: IDLExtendedAttribute[], fileName?: string): IDLNamespace;
299
+ export declare function createNamespace(name: string, members?: IDLEntry[], nodeInitializer?: IDLNodeInitializer): IDLNamespace;
294
300
  export declare function linkParentBack<T extends IDLNode>(node: T): T;
295
- export declare function getNamespacesPathFor(entry: IDLEntry): IDLNamespace[];
296
- export declare function getFileFor(entry: IDLNode): IDLFile | undefined;
297
- export declare function isEqualByQualifedName(a?: IDLEntry, b?: IDLEntry): boolean;
298
- export declare function getPackageClause(entry: IDLNode): string[];
301
+ export declare function getNamespacesPathFor(node: IDLNode): IDLNamespace[];
302
+ export declare function getFileFor(node: IDLNode): IDLFile | undefined;
303
+ export declare function isEqualByQualifedName(a?: IDLNamedNode, b?: IDLNamedNode, pattern?: QNPattern): boolean;
304
+ export declare function getPackageClause(node: IDLNode): string[];
299
305
  export declare function getPackageName(node: IDLNode): string;
300
306
  export declare function isInPackage(entry: IDLEntry | IDLFile, packageName: string, exactMatch?: boolean): boolean;
301
307
  export declare function getNamespaceName(a: IDLEntry): string;
302
- export declare function getFQName(a: IDLEntry): string;
303
- export declare function createVersion(value: string[], extendedAttributes?: IDLExtendedAttribute[], fileName?: string): IDLVersion;
308
+ export type QNPattern = "package.namespace.name" | "namespace.name" | "name";
309
+ export declare function getQualifiedName(a: IDLNode, pattern: QNPattern): string;
310
+ export declare function getFQName(a: IDLNode): string;
311
+ export declare function createVersion(value: string[], nodeInitializer?: IDLNodeInitializer): IDLVersion;
304
312
  export declare function fetchNamespaceFrom(pointOfView?: IDLNode): IDLNamespace | undefined;
305
- export declare function createReferenceType(name: string, typeArguments?: IDLType[]): IDLReferenceType;
306
- export declare function createReferenceType(source: IDLEntry, typeArguments?: IDLType[]): IDLReferenceType;
307
- export declare function createUnspecifiedGenericType(name: string, typeArguments: IDLType[]): IDLUnspecifiedGenericType;
313
+ export declare function createReferenceType(name: string, typeArguments?: IDLType[], nodeInitializer?: IDLNodeInitializer): IDLReferenceType;
314
+ export declare function createReferenceType(source: IDLEntry, typeArguments?: IDLType[], nodeInitializer?: IDLNodeInitializer): IDLReferenceType;
315
+ export declare function createUnspecifiedGenericType(name: string, typeArguments: IDLType[], nodeInitializer?: IDLNodeInitializer): IDLUnspecifiedGenericType;
308
316
  export declare function entityToType(entity: IDLNode): IDLType;
309
- export declare function createContainerType(container: IDLContainerKind, element: IDLType[]): IDLContainerType;
310
- export declare function createUnionType(types: IDLType[], name?: string): IDLUnionType;
311
- export declare function createFile(entries: IDLEntry[], fileName?: string, packageClause?: string[]): IDLFile;
317
+ export declare function createContainerType(container: IDLContainerKind, element: IDLType[], nodeInitializer?: IDLNodeInitializer): IDLContainerType;
318
+ export declare function createUnionType(types: IDLType[], name?: string, nodeInitializer?: IDLNodeInitializer): IDLUnionType;
319
+ export declare function createFile(entries: IDLEntry[], fileName?: string, packageClause?: string[], nodeInitializer?: IDLNodeInitializer): IDLFile;
312
320
  export declare function createImport(clause: string[], name?: string, nodeInitializer?: IDLNodeInitializer): IDLImport;
313
321
  export declare function createEnum(name: string, elements: IDLEnumMember[], nodeInitializer: IDLNodeInitializer): IDLEnum;
314
322
  export declare function createEnumMember(name: string, parent: IDLEnum, type: IDLPrimitiveType, initializer: number | string | undefined, nodeInitializer?: IDLNodeInitializer): IDLEnumMember;
@@ -326,12 +334,14 @@ export type IDLCallableInitializer = {
326
334
  isAsync: boolean;
327
335
  isStatic: boolean;
328
336
  };
329
- export declare function createCallable(name: string, parameters: IDLParameter[], returnType: IDLType, callableInitializer: IDLCallableInitializer, nodeInitializer: IDLNodeInitializer, typeParameters?: string[]): IDLCallable;
337
+ export declare function createCallable(name: string, parameters: IDLParameter[], returnType: IDLType, callableInitializer: IDLCallableInitializer, nodeInitializer?: IDLNodeInitializer, typeParameters?: string[]): IDLCallable;
330
338
  export declare function createConstructor(parameters: IDLParameter[], returnType: IDLType | undefined, nodeInitializer?: IDLNodeInitializer): IDLConstructor;
331
339
  export declare function createCallback(name: string, parameters: IDLParameter[], returnType: IDLType, nodeInitializer?: IDLNodeInitializer, typeParameters?: string[]): IDLCallback;
332
- export declare function createTypeParameterReference(name: string): IDLTypeParameterType;
340
+ export declare function createTypeParameterReference(name: string, nodeInitializer?: IDLNodeInitializer): IDLTypeParameterType;
333
341
  export declare function createTypedef(name: string, type: IDLType, typeParameters?: string[], nodeInitializer?: IDLNodeInitializer): IDLTypedef;
334
342
  export declare function createConstant(name: string, type: IDLType, value: string, nodeInitializer?: IDLNodeInitializer): IDLConstant;
343
+ export declare function clone<T extends IDLNode>(node: T): T;
344
+ export declare function hasTypeParameters(entry: IDLEntry): boolean;
335
345
  export declare function escapeIDLKeyword(name: string): string;
336
346
  export declare function unescapeKeyword(name: string): string;
337
347
  type PrintedIndentInc = "[[indent-inc]]";