@shapeshift-labs/frontier-lang-compiler 0.2.11 → 0.2.13
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.
- package/README.md +5 -0
- package/bench/smoke.mjs +4 -0
- package/dist/index.d.ts +299 -1
- package/dist/index.js +932 -39
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -171,6 +171,9 @@ const project = await importNativeProject({
|
|
|
171
171
|
console.log(imported.universalAst.sourceMaps.length);
|
|
172
172
|
console.log(project.semanticIndex.symbols.length);
|
|
173
173
|
console.log(imported.adapter.coverage.exactness);
|
|
174
|
+
console.log(imported.adapter.coverage.capabilityEvidence.declared.exactness);
|
|
175
|
+
console.log(imported.adapter.coverage.capabilityEvidence.observed.sourceRanges);
|
|
176
|
+
console.log(imported.adapter.coverage.capabilityEvidence.gaps);
|
|
174
177
|
console.log(imported.adapter.coverage.semanticCoverage.level);
|
|
175
178
|
console.log(project.metadata.sourcePreservationSummary.total);
|
|
176
179
|
```
|
|
@@ -184,6 +187,8 @@ The built-in adapter factories are dependency-light wrappers for caller-owned pa
|
|
|
184
187
|
|
|
185
188
|
Adapter summaries include a structured `coverage` record so merge queues can distinguish exact parser AST imports from declaration scans. The record declares exactness, parser token/trivia support, diagnostics support, source-range and generated-range support, and semantic coverage. Built-in wrappers normalize native AST/CST nodes and declaration-level semantic indexes; they do not claim resolved references, types, control flow, generated ranges, or token/trivia fidelity unless the host adapter supplies that evidence.
|
|
186
189
|
|
|
190
|
+
Coverage records also keep declared, observed, and effective capability evidence separate. `coverage.capabilityEvidence.gaps` highlights missing exact AST, token/trivia, parser diagnostics, source range, generated range, reference, type, and control-flow evidence for the current adapter/import. `observedOnly` means the import produced evidence the adapter did not declare, while `declaredOnly` means the adapter declared support that this run did not exercise.
|
|
191
|
+
|
|
187
192
|
## Related Packages
|
|
188
193
|
|
|
189
194
|
The published Frontier package family is generated from one shared package catalog so READMEs stay in sync across packages:
|
package/bench/smoke.mjs
CHANGED
|
@@ -96,6 +96,10 @@ console.log(JSON.stringify({
|
|
|
96
96
|
nativeImportDurationMs: Number(importDurationMs.toFixed(2)),
|
|
97
97
|
coverageMatrixLanguages: coverageMatrix.summary.languages,
|
|
98
98
|
coverageMatrixImports: coverageMatrix.summary.imports,
|
|
99
|
+
adapterCoverageSummaries: coverageMatrix.summary.adapterCoverage.total,
|
|
100
|
+
adapterCoverageSourceRanges: coverageMatrix.summary.adapterCoverage.effective.sourceRanges ?? 0,
|
|
101
|
+
adapterCoverageTokenGaps: coverageMatrix.summary.adapterCoverage.gaps.tokens ?? 0,
|
|
102
|
+
adapterCoverageReferenceGaps: coverageMatrix.summary.adapterCoverage.gaps.references ?? 0,
|
|
99
103
|
coverageMatrixDurationMs: Number(matrixDurationMs.toFixed(2)),
|
|
100
104
|
sourcePreservationRecords: preservationRecords.length,
|
|
101
105
|
sourcePreservationTokens: preservationTokens,
|
package/dist/index.d.ts
CHANGED
|
@@ -118,6 +118,17 @@ export type NativeImportKnownLossKind =
|
|
|
118
118
|
| 'targetProjectionLoss'
|
|
119
119
|
| string;
|
|
120
120
|
|
|
121
|
+
export type NativeImportRegionTaxonomyKind =
|
|
122
|
+
| 'symbol'
|
|
123
|
+
| 'declaration'
|
|
124
|
+
| 'import'
|
|
125
|
+
| 'body'
|
|
126
|
+
| 'call'
|
|
127
|
+
| 'type'
|
|
128
|
+
| 'effect'
|
|
129
|
+
| 'generatedOutput'
|
|
130
|
+
| string;
|
|
131
|
+
|
|
121
132
|
export interface NativeImportLossSummaryOptions {
|
|
122
133
|
readonly exactAst?: boolean;
|
|
123
134
|
readonly evidence?: readonly EvidenceRecord[];
|
|
@@ -163,6 +174,28 @@ export interface NativeImportLanguageProfile {
|
|
|
163
174
|
readonly notes: readonly string[];
|
|
164
175
|
}
|
|
165
176
|
|
|
177
|
+
export interface NativeImporterAdapterCoverageAggregate {
|
|
178
|
+
readonly total: number;
|
|
179
|
+
readonly declared: Readonly<Record<string, number>>;
|
|
180
|
+
readonly observed: Readonly<Record<string, number>>;
|
|
181
|
+
readonly effective: Readonly<Record<string, number>>;
|
|
182
|
+
readonly gaps: Readonly<Record<string, number>>;
|
|
183
|
+
readonly declaredOnly: Readonly<Record<string, number>>;
|
|
184
|
+
readonly observedOnly: Readonly<Record<string, number>>;
|
|
185
|
+
readonly summaries: readonly {
|
|
186
|
+
readonly adapterId?: string;
|
|
187
|
+
readonly language?: FrontierSourceLanguage | string;
|
|
188
|
+
readonly parser?: string;
|
|
189
|
+
readonly exactness?: NativeImporterAdapterExactness;
|
|
190
|
+
readonly declared: readonly string[];
|
|
191
|
+
readonly observed: readonly string[];
|
|
192
|
+
readonly effective: readonly string[];
|
|
193
|
+
readonly gaps: readonly string[];
|
|
194
|
+
readonly declaredOnly: readonly string[];
|
|
195
|
+
readonly observedOnly: readonly string[];
|
|
196
|
+
}[];
|
|
197
|
+
}
|
|
198
|
+
|
|
166
199
|
export interface NativeImportCoverageLanguage {
|
|
167
200
|
readonly language: FrontierSourceLanguage;
|
|
168
201
|
readonly aliases: readonly string[];
|
|
@@ -173,6 +206,7 @@ export interface NativeImportCoverageLanguage {
|
|
|
173
206
|
readonly knownLossKinds: readonly NativeImportKnownLossKind[];
|
|
174
207
|
readonly defaultReadiness: SemanticMergeReadiness;
|
|
175
208
|
readonly notes: readonly string[];
|
|
209
|
+
readonly adapterCoverage: NativeImporterAdapterCoverageAggregate;
|
|
176
210
|
readonly imports: {
|
|
177
211
|
readonly total: number;
|
|
178
212
|
readonly parsers: readonly string[];
|
|
@@ -203,6 +237,7 @@ export interface NativeImportCoverageMatrix {
|
|
|
203
237
|
readonly losses: number;
|
|
204
238
|
readonly byReadiness: Readonly<Record<string, number>>;
|
|
205
239
|
readonly lossKinds: Readonly<Record<string, number>>;
|
|
240
|
+
readonly adapterCoverage: NativeImporterAdapterCoverageAggregate;
|
|
206
241
|
};
|
|
207
242
|
readonly metadata: {
|
|
208
243
|
readonly compileTargets: readonly FrontierCompileTarget[];
|
|
@@ -217,6 +252,167 @@ export interface NativeImportCoverageMatrixOptions {
|
|
|
217
252
|
readonly generatedAt?: number;
|
|
218
253
|
}
|
|
219
254
|
|
|
255
|
+
export interface NativeImportContractSource {
|
|
256
|
+
readonly id: string;
|
|
257
|
+
readonly language?: FrontierSourceLanguage | string;
|
|
258
|
+
readonly sourcePath?: string;
|
|
259
|
+
readonly sourceHash?: string;
|
|
260
|
+
readonly parser?: string;
|
|
261
|
+
readonly nativeSourceId?: string;
|
|
262
|
+
readonly nativeAstId?: string;
|
|
263
|
+
readonly semanticIndexId?: string;
|
|
264
|
+
readonly universalAstId?: string;
|
|
265
|
+
readonly patchId?: string;
|
|
266
|
+
readonly sourceMapIds: readonly string[];
|
|
267
|
+
readonly sourceMapMappings: number;
|
|
268
|
+
readonly symbolCount: number;
|
|
269
|
+
readonly lossCount: number;
|
|
270
|
+
readonly evidenceCount: number;
|
|
271
|
+
readonly readiness?: SemanticMergeReadiness;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
export interface NativeImportSourcePreservationRecordSummary {
|
|
275
|
+
readonly id?: string;
|
|
276
|
+
readonly language?: FrontierSourceLanguage | string;
|
|
277
|
+
readonly sourcePath?: string;
|
|
278
|
+
readonly sourceHash?: string;
|
|
279
|
+
readonly sourceBytes?: number;
|
|
280
|
+
readonly lineCount?: number;
|
|
281
|
+
readonly newline?: string;
|
|
282
|
+
readonly encoding?: string;
|
|
283
|
+
readonly exactSourceAvailable: boolean;
|
|
284
|
+
readonly tokens: number;
|
|
285
|
+
readonly trivia: number;
|
|
286
|
+
readonly directives: number;
|
|
287
|
+
readonly comments: number;
|
|
288
|
+
readonly whitespace: number;
|
|
289
|
+
readonly truncated: boolean;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
export interface NativeImportSourcePreservationContract {
|
|
293
|
+
readonly total: number;
|
|
294
|
+
readonly ids: readonly string[];
|
|
295
|
+
readonly sourcePaths: readonly string[];
|
|
296
|
+
readonly sourceHashes: readonly string[];
|
|
297
|
+
readonly exactSourceAvailable: number;
|
|
298
|
+
readonly sourceBytes: number;
|
|
299
|
+
readonly lineCount: number;
|
|
300
|
+
readonly tokens: number;
|
|
301
|
+
readonly trivia: number;
|
|
302
|
+
readonly directives: number;
|
|
303
|
+
readonly comments: number;
|
|
304
|
+
readonly whitespace: number;
|
|
305
|
+
readonly truncated: boolean;
|
|
306
|
+
readonly records: readonly NativeImportSourcePreservationRecordSummary[];
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
export interface NativeImportAdapterCoverageRecordSummary {
|
|
310
|
+
readonly adapterId?: string;
|
|
311
|
+
readonly adapterVersion?: string;
|
|
312
|
+
readonly parser?: string;
|
|
313
|
+
readonly capabilities: readonly string[];
|
|
314
|
+
readonly supportedExtensions: readonly string[];
|
|
315
|
+
readonly exactness?: NativeImporterAdapterExactness;
|
|
316
|
+
readonly exactAst: boolean;
|
|
317
|
+
readonly tokens: boolean;
|
|
318
|
+
readonly trivia: boolean;
|
|
319
|
+
readonly diagnostics: boolean;
|
|
320
|
+
readonly sourceRanges: boolean;
|
|
321
|
+
readonly generatedRanges: boolean;
|
|
322
|
+
readonly semanticCoverage?: NativeImporterAdapterSemanticCoverage;
|
|
323
|
+
readonly observed?: NativeImporterAdapterCoverageObserved;
|
|
324
|
+
readonly notes: readonly string[];
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
export interface NativeImportAdapterCoverageContract {
|
|
328
|
+
readonly total: number;
|
|
329
|
+
readonly adapterIds: readonly string[];
|
|
330
|
+
readonly parsers: readonly string[];
|
|
331
|
+
readonly exactness: readonly string[];
|
|
332
|
+
readonly exactAst: number;
|
|
333
|
+
readonly tokens: number;
|
|
334
|
+
readonly trivia: number;
|
|
335
|
+
readonly diagnostics: number;
|
|
336
|
+
readonly sourceRanges: number;
|
|
337
|
+
readonly generatedRanges: number;
|
|
338
|
+
readonly semanticCoverageLevels: readonly string[];
|
|
339
|
+
readonly observed: NativeImporterAdapterCoverageObserved;
|
|
340
|
+
readonly records: readonly NativeImportAdapterCoverageRecordSummary[];
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
export interface NativeImportRegionSummary {
|
|
344
|
+
readonly total: number;
|
|
345
|
+
readonly ids: readonly string[];
|
|
346
|
+
readonly keys: readonly string[];
|
|
347
|
+
readonly sourcePaths: readonly string[];
|
|
348
|
+
readonly byKind: Readonly<Record<string, number>>;
|
|
349
|
+
readonly byGranularity: Readonly<Record<string, number>>;
|
|
350
|
+
readonly byPrecision: Readonly<Record<string, number>>;
|
|
351
|
+
readonly byLanguage: Readonly<Record<string, number>>;
|
|
352
|
+
readonly symbolIds: readonly string[];
|
|
353
|
+
readonly taxonomy: SemanticImportRegionTaxonomySummary;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
export interface NativeImportSourceMapSummary {
|
|
357
|
+
readonly total: number;
|
|
358
|
+
readonly ids: readonly string[];
|
|
359
|
+
readonly mappingCount: number;
|
|
360
|
+
readonly sourcePaths: readonly string[];
|
|
361
|
+
readonly targetPaths: readonly string[];
|
|
362
|
+
readonly byPrecision: Readonly<Record<string, number>>;
|
|
363
|
+
readonly sourceRangeMappings: number;
|
|
364
|
+
readonly generatedRangeMappings: number;
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
export interface NativeImportReadinessContract {
|
|
368
|
+
readonly semanticMergeReadiness: SemanticMergeReadiness;
|
|
369
|
+
readonly severityReadiness: SemanticMergeReadiness;
|
|
370
|
+
readonly reasons: readonly string[];
|
|
371
|
+
readonly failedEvidenceIds: readonly string[];
|
|
372
|
+
readonly blockingLossIds: readonly string[];
|
|
373
|
+
readonly reviewLossIds: readonly string[];
|
|
374
|
+
readonly informationalLossIds: readonly string[];
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
export interface NativeImportResultContract {
|
|
378
|
+
readonly kind: 'frontier.lang.nativeImportResultContract';
|
|
379
|
+
readonly version: 1;
|
|
380
|
+
readonly importResultId?: string;
|
|
381
|
+
readonly language?: FrontierSourceLanguage | 'mixed' | string;
|
|
382
|
+
readonly sourcePath?: string;
|
|
383
|
+
readonly sourceHash?: string;
|
|
384
|
+
readonly sourceCount: number;
|
|
385
|
+
readonly sources: readonly NativeImportContractSource[];
|
|
386
|
+
readonly ids: {
|
|
387
|
+
readonly nativeSourceId?: string;
|
|
388
|
+
readonly nativeAstId?: string;
|
|
389
|
+
readonly semanticIndexId?: string;
|
|
390
|
+
readonly universalAstId?: string;
|
|
391
|
+
readonly patchId?: string;
|
|
392
|
+
readonly sourceMapIds: readonly string[];
|
|
393
|
+
readonly semanticSidecarIds: readonly string[];
|
|
394
|
+
};
|
|
395
|
+
readonly sourcePreservation: NativeImportSourcePreservationContract;
|
|
396
|
+
readonly adapterCoverage: NativeImportAdapterCoverageContract;
|
|
397
|
+
readonly lossSummary: NativeImportLossSummary;
|
|
398
|
+
readonly regions: NativeImportRegionSummary;
|
|
399
|
+
readonly sourceMaps: NativeImportSourceMapSummary;
|
|
400
|
+
readonly readiness: NativeImportReadinessContract;
|
|
401
|
+
readonly evidence: {
|
|
402
|
+
readonly total: number;
|
|
403
|
+
readonly failed: readonly string[];
|
|
404
|
+
readonly ids: readonly string[];
|
|
405
|
+
};
|
|
406
|
+
readonly metadata: Record<string, unknown>;
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
export interface NativeImportResultContractOptions extends SemanticImportSidecarOptions {
|
|
410
|
+
readonly lossSummary?: NativeImportLossSummary;
|
|
411
|
+
readonly semanticSidecarIds?: readonly string[] | string;
|
|
412
|
+
readonly sidecarIds?: readonly string[] | string;
|
|
413
|
+
readonly sidecarId?: string;
|
|
414
|
+
}
|
|
415
|
+
|
|
220
416
|
export type NativeSourceTokenKind =
|
|
221
417
|
| 'identifier'
|
|
222
418
|
| 'keyword'
|
|
@@ -296,8 +492,10 @@ export interface CreateNativeSourcePreservationOptions {
|
|
|
296
492
|
export interface SemanticImportOwnershipRegion {
|
|
297
493
|
readonly id: string;
|
|
298
494
|
readonly key: string;
|
|
495
|
+
readonly regionKind?: NativeImportRegionTaxonomyKind;
|
|
299
496
|
readonly granularity: 'symbol' | string;
|
|
300
497
|
readonly language?: FrontierSourceLanguage | string;
|
|
498
|
+
readonly documentId?: string;
|
|
301
499
|
readonly sourcePath?: string;
|
|
302
500
|
readonly sourceHash?: string;
|
|
303
501
|
readonly symbolId?: string;
|
|
@@ -307,6 +505,7 @@ export interface SemanticImportOwnershipRegion {
|
|
|
307
505
|
readonly sourceSpan?: SourceSpan;
|
|
308
506
|
readonly precision?: 'exact' | 'declaration' | 'line' | 'estimated' | 'unknown' | string;
|
|
309
507
|
readonly mergePolicy?: string;
|
|
508
|
+
readonly metadata?: Record<string, unknown>;
|
|
310
509
|
}
|
|
311
510
|
|
|
312
511
|
export interface SemanticImportSidecarSymbol {
|
|
@@ -321,9 +520,18 @@ export interface SemanticImportSidecarSymbol {
|
|
|
321
520
|
readonly signatureHash?: string;
|
|
322
521
|
readonly ownershipRegionId: string;
|
|
323
522
|
readonly ownershipKey: string;
|
|
523
|
+
readonly ownershipRegionKind?: NativeImportRegionTaxonomyKind;
|
|
324
524
|
readonly readiness: SemanticMergeReadiness;
|
|
325
525
|
}
|
|
326
526
|
|
|
527
|
+
export interface SemanticImportRegionTaxonomySummary {
|
|
528
|
+
readonly kinds: readonly NativeImportRegionTaxonomyKind[];
|
|
529
|
+
readonly presentKinds: readonly NativeImportRegionTaxonomyKind[];
|
|
530
|
+
readonly byKind: Readonly<Record<string, number>>;
|
|
531
|
+
readonly keys: readonly string[];
|
|
532
|
+
readonly keysByKind: Readonly<Record<string, readonly string[]>>;
|
|
533
|
+
}
|
|
534
|
+
|
|
327
535
|
export interface SemanticImportPatchHint {
|
|
328
536
|
readonly id: string;
|
|
329
537
|
readonly kind: 'source-region-patch' | string;
|
|
@@ -357,6 +565,7 @@ export interface SemanticImportSidecarImportEntry {
|
|
|
357
565
|
readonly sourceMapMappingCount: number;
|
|
358
566
|
readonly readiness: SemanticMergeReadiness;
|
|
359
567
|
readonly emptySemanticIndex: boolean;
|
|
568
|
+
readonly regionTaxonomy?: SemanticImportRegionTaxonomySummary;
|
|
360
569
|
}
|
|
361
570
|
|
|
362
571
|
export interface SemanticImportSidecar {
|
|
@@ -390,6 +599,7 @@ export interface SemanticImportSidecar {
|
|
|
390
599
|
readonly blockingLossIds: readonly string[];
|
|
391
600
|
readonly reviewLossIds: readonly string[];
|
|
392
601
|
};
|
|
602
|
+
readonly regionTaxonomy: SemanticImportRegionTaxonomySummary;
|
|
393
603
|
readonly evidence: {
|
|
394
604
|
readonly total: number;
|
|
395
605
|
readonly failed: readonly string[];
|
|
@@ -399,6 +609,7 @@ export interface SemanticImportSidecar {
|
|
|
399
609
|
readonly imports: number;
|
|
400
610
|
readonly symbols: number;
|
|
401
611
|
readonly ownershipRegions: number;
|
|
612
|
+
readonly regionKinds: number;
|
|
402
613
|
readonly sourceMapMappings: number;
|
|
403
614
|
readonly readiness: SemanticMergeReadiness;
|
|
404
615
|
readonly emptySemanticIndex: boolean;
|
|
@@ -431,14 +642,97 @@ export interface NativeImporterAdapterSemanticCoverage {
|
|
|
431
642
|
readonly controlFlow: boolean;
|
|
432
643
|
}
|
|
433
644
|
|
|
645
|
+
export interface NativeImporterAdapterCoverageSnapshot {
|
|
646
|
+
readonly exactness: NativeImporterAdapterExactness;
|
|
647
|
+
readonly exactAst: boolean;
|
|
648
|
+
readonly tokens: boolean;
|
|
649
|
+
readonly trivia: boolean;
|
|
650
|
+
readonly diagnostics: boolean;
|
|
651
|
+
readonly sourceRanges: boolean;
|
|
652
|
+
readonly generatedRanges: boolean;
|
|
653
|
+
readonly semanticCoverage: NativeImporterAdapterSemanticCoverage;
|
|
654
|
+
}
|
|
655
|
+
|
|
434
656
|
export interface NativeImporterAdapterCoverageObserved {
|
|
657
|
+
readonly exactness?: NativeImporterAdapterExactness;
|
|
658
|
+
readonly exactAst?: boolean;
|
|
659
|
+
readonly tokens?: boolean;
|
|
660
|
+
readonly tokenCount?: number;
|
|
661
|
+
readonly trivia?: boolean;
|
|
662
|
+
readonly triviaCount?: number;
|
|
435
663
|
readonly diagnostics: number;
|
|
664
|
+
readonly parserDiagnostics?: number;
|
|
665
|
+
readonly diagnosticErrors?: number;
|
|
666
|
+
readonly diagnosticWarnings?: number;
|
|
667
|
+
readonly diagnosticInfos?: number;
|
|
436
668
|
readonly losses: number;
|
|
437
669
|
readonly nativeAstNodes: number;
|
|
438
670
|
readonly semanticSymbols: number;
|
|
671
|
+
readonly semanticReferences?: number;
|
|
672
|
+
readonly semanticTypes?: number;
|
|
673
|
+
readonly semanticControlFlow?: number;
|
|
674
|
+
readonly references?: boolean;
|
|
675
|
+
readonly types?: boolean;
|
|
676
|
+
readonly controlFlow?: boolean;
|
|
439
677
|
readonly sourceMapMappings: number;
|
|
440
678
|
readonly sourceRanges: boolean;
|
|
679
|
+
readonly sourceRangeNodes?: number;
|
|
680
|
+
readonly sourceRangeMappings?: number;
|
|
441
681
|
readonly generatedRanges: boolean;
|
|
682
|
+
readonly generatedRangeMappings?: number;
|
|
683
|
+
readonly semanticCoverage?: NativeImporterAdapterSemanticCoverage;
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
export interface NativeImporterAdapterCoverageCapabilityRow {
|
|
687
|
+
readonly capability: string;
|
|
688
|
+
readonly declared: boolean;
|
|
689
|
+
readonly observed: boolean;
|
|
690
|
+
readonly effective: boolean;
|
|
691
|
+
readonly count: number;
|
|
692
|
+
readonly status: 'declared-and-observed' | 'declared-unobserved' | 'observed-undeclared' | 'absent';
|
|
693
|
+
}
|
|
694
|
+
|
|
695
|
+
export interface NativeImporterAdapterCoverageCapabilityEvidence {
|
|
696
|
+
readonly declared: NativeImporterAdapterCoverageSnapshot;
|
|
697
|
+
readonly observed: NativeImporterAdapterCoverageObserved;
|
|
698
|
+
readonly effective: NativeImporterAdapterCoverageSnapshot;
|
|
699
|
+
readonly capabilities: readonly NativeImporterAdapterCoverageCapabilityRow[];
|
|
700
|
+
readonly gaps: readonly string[];
|
|
701
|
+
readonly declaredOnly: readonly string[];
|
|
702
|
+
readonly observedOnly: readonly string[];
|
|
703
|
+
readonly parserDiagnostics: {
|
|
704
|
+
readonly declared: boolean;
|
|
705
|
+
readonly observed: boolean;
|
|
706
|
+
readonly count: number;
|
|
707
|
+
readonly errors: number;
|
|
708
|
+
readonly warnings: number;
|
|
709
|
+
readonly infos: number;
|
|
710
|
+
};
|
|
711
|
+
readonly sourceRanges: {
|
|
712
|
+
readonly declared: boolean;
|
|
713
|
+
readonly observed: boolean;
|
|
714
|
+
readonly nativeAstNodes: number;
|
|
715
|
+
readonly sourceRangeNodes: number;
|
|
716
|
+
readonly sourceMapMappings: number;
|
|
717
|
+
readonly sourceRangeMappings: number;
|
|
718
|
+
readonly generatedRangeMappings: number;
|
|
719
|
+
};
|
|
720
|
+
readonly tokensTrivia: {
|
|
721
|
+
readonly tokens: { readonly declared: boolean; readonly observed: boolean; readonly count: number };
|
|
722
|
+
readonly trivia: { readonly declared: boolean; readonly observed: boolean; readonly count: number };
|
|
723
|
+
};
|
|
724
|
+
readonly semantic: {
|
|
725
|
+
readonly level: {
|
|
726
|
+
readonly declared: string;
|
|
727
|
+
readonly observed: string;
|
|
728
|
+
readonly effective: string;
|
|
729
|
+
};
|
|
730
|
+
readonly declarations: NativeImporterAdapterCoverageCapabilityRow;
|
|
731
|
+
readonly symbols: NativeImporterAdapterCoverageCapabilityRow;
|
|
732
|
+
readonly references: NativeImporterAdapterCoverageCapabilityRow;
|
|
733
|
+
readonly types: NativeImporterAdapterCoverageCapabilityRow;
|
|
734
|
+
readonly controlFlow: NativeImporterAdapterCoverageCapabilityRow;
|
|
735
|
+
};
|
|
442
736
|
}
|
|
443
737
|
|
|
444
738
|
export interface NativeImporterAdapterCoverageSummary {
|
|
@@ -451,11 +745,13 @@ export interface NativeImporterAdapterCoverageSummary {
|
|
|
451
745
|
readonly generatedRanges: boolean;
|
|
452
746
|
readonly semanticCoverage: NativeImporterAdapterSemanticCoverage;
|
|
453
747
|
readonly notes: readonly string[];
|
|
748
|
+
readonly declared?: NativeImporterAdapterCoverageSnapshot;
|
|
454
749
|
readonly observed?: NativeImporterAdapterCoverageObserved;
|
|
750
|
+
readonly capabilityEvidence?: NativeImporterAdapterCoverageCapabilityEvidence;
|
|
455
751
|
}
|
|
456
752
|
|
|
457
753
|
export type NativeImporterAdapterCoverageInput =
|
|
458
|
-
Omit<Partial<NativeImporterAdapterCoverageSummary>, 'semanticCoverage' | 'observed'> & {
|
|
754
|
+
Omit<Partial<NativeImporterAdapterCoverageSummary>, 'semanticCoverage' | 'observed' | 'declared' | 'capabilityEvidence'> & {
|
|
459
755
|
readonly semanticCoverage?: Partial<NativeImporterAdapterSemanticCoverage>;
|
|
460
756
|
readonly observed?: Partial<NativeImporterAdapterCoverageObserved>;
|
|
461
757
|
};
|
|
@@ -784,6 +1080,7 @@ export declare const FrontierCompileTargets: readonly FrontierCompileTarget[];
|
|
|
784
1080
|
export declare const NativeImportRoundtripReadinessStatuses: readonly NativeImportRoundtripReadinessStatus[];
|
|
785
1081
|
export declare const NativeImportTaxonomyKinds: readonly NativeImportTaxonomyKind[];
|
|
786
1082
|
export declare const NativeImportLossKinds: readonly NativeImportKnownLossKind[];
|
|
1083
|
+
export declare const NativeImportRegionTaxonomyKinds: readonly NativeImportRegionTaxonomyKind[];
|
|
787
1084
|
export declare const NativeImportReadinessBySeverity: Readonly<Record<NativeImportLossSummary['highestSeverity'], SemanticMergeReadiness>>;
|
|
788
1085
|
export declare const NativeImportLanguageProfiles: readonly NativeImportLanguageProfile[];
|
|
789
1086
|
export declare function normalizeCompileTarget(target?: string): FrontierCompileTarget;
|
|
@@ -798,6 +1095,7 @@ export declare function classifyNativeImportRoundtripReadiness(importResult: Nat
|
|
|
798
1095
|
export declare function createNativeImportCoverageMatrix(options?: NativeImportCoverageMatrixOptions): NativeImportCoverageMatrix;
|
|
799
1096
|
export declare function createNativeSourcePreservation(options: CreateNativeSourcePreservationOptions): NativeSourcePreservation;
|
|
800
1097
|
export declare function createSemanticImportSidecar(importResult: NativeSourceImportResult | NativeProjectImportResult, options?: SemanticImportSidecarOptions): SemanticImportSidecar;
|
|
1098
|
+
export declare function createNativeImportResultContract(importResult: NativeSourceImportResult | NativeProjectImportResult, options?: NativeImportResultContractOptions): NativeImportResultContract;
|
|
801
1099
|
export declare function createEstreeNativeImporterAdapter(options?: JavaScriptNativeImporterAdapterOptions): NativeImporterAdapter;
|
|
802
1100
|
export declare function createBabelNativeImporterAdapter(options?: JavaScriptNativeImporterAdapterOptions): NativeImporterAdapter;
|
|
803
1101
|
export declare function createTypeScriptCompilerNativeImporterAdapter(options?: TypeScriptCompilerNativeImporterAdapterOptions): NativeImporterAdapter;
|