@@ -1338,6 +1338,9 @@ abstract class LinkedNode extends base.SummaryClass {
1338
1338
@VariantId (6 , variant: LinkedNodeKind .fieldFormalParameter)
1339
1339
LinkedNode get fieldFormalParameter_type;
1340
1340
1341
+ @VariantId (24 , variant: LinkedNodeKind .fieldFormalParameter)
1342
+ LinkedNodeType get fieldFormalParameter_type2;
1343
+
1341
1344
@VariantId (7 , variant: LinkedNodeKind .fieldFormalParameter)
1342
1345
LinkedNode get fieldFormalParameter_typeParameters;
1343
1346
@@ -1459,6 +1462,9 @@ abstract class LinkedNode extends base.SummaryClass {
1459
1462
@VariantId (7 , variant: LinkedNodeKind .functionDeclaration)
1460
1463
LinkedNode get functionDeclaration_returnType;
1461
1464
1465
+ @VariantId (24 , variant: LinkedNodeKind .functionDeclaration)
1466
+ LinkedNodeType get functionDeclaration_returnType2;
1467
+
1462
1468
@VariantId (6 , variant: LinkedNodeKind .functionDeclarationStatement)
1463
1469
LinkedNode get functionDeclarationStatement_functionDeclaration;
1464
1470
@@ -1696,6 +1702,9 @@ abstract class LinkedNode extends base.SummaryClass {
1696
1702
@VariantId (7 , variant: LinkedNodeKind .mapLiteralEntry)
1697
1703
LinkedNode get mapLiteralEntry_value;
1698
1704
1705
+ @VariantId (19 , variant: LinkedNodeKind .methodDeclaration)
1706
+ int get methodDeclaration_actualProperty;
1707
+
1699
1708
@VariantId (6 , variant: LinkedNodeKind .methodDeclaration)
1700
1709
LinkedNode get methodDeclaration_body;
1701
1710
@@ -1720,6 +1729,9 @@ abstract class LinkedNode extends base.SummaryClass {
1720
1729
@VariantId (8 , variant: LinkedNodeKind .methodDeclaration)
1721
1730
LinkedNode get methodDeclaration_returnType;
1722
1731
1732
+ @VariantId (24 , variant: LinkedNodeKind .methodDeclaration)
1733
+ LinkedNodeType get methodDeclaration_returnType2;
1734
+
1723
1735
@VariantId (9 , variant: LinkedNodeKind .methodDeclaration)
1724
1736
LinkedNode get methodDeclaration_typeParameters;
1725
1737
@@ -1804,6 +1816,13 @@ abstract class LinkedNode extends base.SummaryClass {
1804
1816
])
1805
1817
LinkedNode get normalFormalParameter_identifier;
1806
1818
1819
+ @VariantId (27 , variantList: [
1820
+ LinkedNodeKind .fieldFormalParameter,
1821
+ LinkedNodeKind .functionTypedFormalParameter,
1822
+ LinkedNodeKind .simpleFormalParameter,
1823
+ ])
1824
+ bool get normalFormalParameter_isCovariant;
1825
+
1807
1826
@VariantId (4 , variantList: [
1808
1827
LinkedNodeKind .fieldFormalParameter,
1809
1828
LinkedNodeKind .functionTypedFormalParameter,
@@ -1931,6 +1950,9 @@ abstract class LinkedNode extends base.SummaryClass {
1931
1950
@VariantId (6 , variant: LinkedNodeKind .simpleFormalParameter)
1932
1951
LinkedNode get simpleFormalParameter_type;
1933
1952
1953
+ @VariantId (24 , variant: LinkedNodeKind .simpleFormalParameter)
1954
+ LinkedNodeType get simpleFormalParameter_type2;
1955
+
1934
1956
@VariantId (15 , variant: LinkedNodeKind .simpleIdentifier)
1935
1957
int get simpleIdentifier_element;
1936
1958
@@ -2140,6 +2162,9 @@ abstract class LinkedNode extends base.SummaryClass {
2140
2162
])
2141
2163
int get uriBasedDirective_uriElement;
2142
2164
2165
+ @VariantId (32 , variant: LinkedNodeKind .variableDeclaration)
2166
+ LinkedNodeVariablesDeclaration get variableDeclaration_declaration;
2167
+
2143
2168
@VariantId (15 , variant: LinkedNodeKind .variableDeclaration)
2144
2169
int get variableDeclaration_equals;
2145
2170
@@ -2149,6 +2174,9 @@ abstract class LinkedNode extends base.SummaryClass {
2149
2174
@VariantId (7 , variant: LinkedNodeKind .variableDeclaration)
2150
2175
LinkedNode get variableDeclaration_name;
2151
2176
2177
+ @VariantId (24 , variant: LinkedNodeKind .variableDeclaration)
2178
+ LinkedNodeType get variableDeclaration_type2;
2179
+
2152
2180
@VariantId (15 , variant: LinkedNodeKind .variableDeclarationList)
2153
2181
int get variableDeclarationList_keyword;
2154
2182
@@ -2198,20 +2226,19 @@ abstract class LinkedNode extends base.SummaryClass {
2198
2226
int get yieldStatement_yieldKeyword;
2199
2227
}
2200
2228
2201
- /// TODO(scheglov) extend to support multiple libraries or remove
2229
+ /// Information about a group of libraries linked together, for example because
2230
+ /// they form a single cycle, or because they represent a single build artifact.
2202
2231
@TopLevel ('LNBn' )
2203
2232
abstract class LinkedNodeBundle extends base .SummaryClass {
2204
2233
factory LinkedNodeBundle .fromBuffer (List <int > buffer) =>
2205
2234
generated.readLinkedNodeBundle (buffer);
2206
2235
2207
- @Id (2 )
2208
- LinkedNode get node;
2209
-
2210
2236
@Id (1 )
2211
- LinkedNodeReference get references ;
2237
+ List < LinkedNodeLibrary > get libraries ;
2212
2238
2239
+ /// The shared list of references used in the [libraries] .
2213
2240
@Id (0 )
2214
- UnlinkedTokens get tokens ;
2241
+ LinkedNodeReferences get references ;
2215
2242
}
2216
2243
2217
2244
/// Types of comments.
@@ -2344,8 +2371,20 @@ enum LinkedNodeKind {
2344
2371
yieldStatement,
2345
2372
}
2346
2373
2374
+ /// Information about a single library in a [LinkedNodeBundle] .
2375
+ abstract class LinkedNodeLibrary extends base .SummaryClass {
2376
+ @Id (2 )
2377
+ List <int > get exports;
2378
+
2379
+ @Id (1 )
2380
+ List <LinkedNodeUnit > get units;
2381
+
2382
+ @Id (0 )
2383
+ String get uriStr;
2384
+ }
2385
+
2347
2386
/// Flattened tree of declarations referenced from [LinkedNode] s.
2348
- abstract class LinkedNodeReference extends base .SummaryClass {
2387
+ abstract class LinkedNodeReferences extends base .SummaryClass {
2349
2388
@Id (1 )
2350
2389
List <String > get name;
2351
2390
@@ -2355,18 +2394,18 @@ abstract class LinkedNodeReference extends base.SummaryClass {
2355
2394
2356
2395
/// Information about a Dart type.
2357
2396
abstract class LinkedNodeType extends base .SummaryClass {
2358
- /// References to [LinkedNodeReference ] .
2397
+ /// References to [LinkedNodeReferences ] .
2359
2398
@Id (0 )
2360
2399
List <int > get functionFormalParameters;
2361
2400
2362
2401
@Id (1 )
2363
2402
LinkedNodeType get functionReturnType;
2364
2403
2365
- /// References to [LinkedNodeReference ] .
2404
+ /// References to [LinkedNodeReferences ] .
2366
2405
@Id (2 )
2367
2406
List <int > get functionTypeParameters;
2368
2407
2369
- /// Reference to a [LinkedNodeReference ] .
2408
+ /// Reference to a [LinkedNodeReferences ] .
2370
2409
@Id (3 )
2371
2410
int get interfaceClass;
2372
2411
@@ -2376,7 +2415,7 @@ abstract class LinkedNodeType extends base.SummaryClass {
2376
2415
@Id (5 )
2377
2416
LinkedNodeTypeKind get kind;
2378
2417
2379
- /// Reference to a [LinkedNodeReference ] .
2418
+ /// Reference to a [LinkedNodeReferences ] .
2380
2419
@Id (6 )
2381
2420
int get typeParameterParameter;
2382
2421
}
@@ -2391,6 +2430,34 @@ enum LinkedNodeTypeKind {
2391
2430
void_
2392
2431
}
2393
2432
2433
+ /// Information about a single library in a [LinkedNodeLibrary] .
2434
+ abstract class LinkedNodeUnit extends base .SummaryClass {
2435
+ @Id (2 )
2436
+ LinkedNode get node;
2437
+
2438
+ @Id (1 )
2439
+ UnlinkedTokens get tokens;
2440
+
2441
+ @Id (0 )
2442
+ String get uriStr;
2443
+ }
2444
+
2445
+ /// Information about a top-level declaration, or a field declaration that
2446
+ /// contributes information to [LinkedNodeKind.variableDeclaration] .
2447
+ abstract class LinkedNodeVariablesDeclaration extends base .SummaryClass {
2448
+ @Id (3 )
2449
+ LinkedNode get comment;
2450
+
2451
+ @Id (0 )
2452
+ bool get isConst;
2453
+
2454
+ @Id (1 )
2455
+ bool get isFinal;
2456
+
2457
+ @Id (2 )
2458
+ bool get isStatic;
2459
+ }
2460
+
2394
2461
/// Information about the resolution of an [UnlinkedReference] .
2395
2462
abstract class LinkedReference extends base .SummaryClass {
2396
2463
/// If this [LinkedReference] doesn't have an associated [UnlinkedReference] ,
0 commit comments