Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(962)

Side by Side Diff: pkg/analyzer/tool/summary/idl.dart

Issue 1615453002: Use Uint32 for `int` in IDL. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « pkg/analyzer/tool/summary/generate.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 /** 5 /**
6 * This file is an "idl" style description of the summary format. It is not 6 * This file is an "idl" style description of the summary format. It is not
7 * executed directly; instead it is parsed and transformed into code that 7 * executed directly; instead it is parsed and transformed into code that
8 * implements the summary format. 8 * implements the summary format.
9 * 9 *
10 * The code generation process introduces the following non-typical semantics: 10 * The code generation process introduces the following non-typical semantics:
11 * - Fields of type List are never null, and have a default value of the empty 11 * - Fields of type List are never null, and have a default value of the empty
12 * list. 12 * list.
13 * - Fields of type int are never null, and have a default value of zero. 13 * - Fields of type int are unsigned 32-bit integers, never null, and have a
14 * default value of zero.
14 * - Fields of type String are never null, and have a default value of ''. 15 * - Fields of type String are never null, and have a default value of ''.
15 * - Fields of type bool are never null, and have a default value of false. 16 * - Fields of type bool are never null, and have a default value of false.
16 * - Fields whose type is an enum are never null, and have a default value of 17 * - Fields whose type is an enum are never null, and have a default value of
17 * the first value declared in the enum. 18 * the first value declared in the enum.
18 * 19 *
19 * Terminology used in this document: 20 * Terminology used in this document:
20 * - "Unlinked" refers to information that can be determined from reading a 21 * - "Unlinked" refers to information that can be determined from reading a
21 * single .dart file in isolation. 22 * single .dart file in isolation.
22 * - "Prelinked" refers to information that can be determined from the defining 23 * - "Prelinked" refers to information that can be determined from the defining
23 * compilation unit of a library, plus direct imports, plus the transitive 24 * compilation unit of a library, plus direct imports, plus the transitive
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after
291 List<UnlinkedUnit> unlinkedUnits; 292 List<UnlinkedUnit> unlinkedUnits;
292 } 293 }
293 294
294 /** 295 /**
295 * Summary information about a reference to a type. 296 * Summary information about a reference to a type.
296 */ 297 */
297 class TypeRef { 298 class TypeRef {
298 /** 299 /**
299 * If this [TypeRef] is contained within [LinkedUnit.types], slot id (which 300 * If this [TypeRef] is contained within [LinkedUnit.types], slot id (which
300 * is unique within the compilation unit) identifying the target of type 301 * is unique within the compilation unit) identifying the target of type
301 * propagation or type inference with which this [TypeRef] is asociated. 302 * propagation or type inference with which this [TypeRef] is associated.
302 * 303 *
303 * Otherwise zero. 304 * Otherwise zero.
304 */ 305 */
305 int slot; 306 int slot;
306 307
307 /** 308 /**
308 * Index into [UnlinkedUnit.references] for the type being referred to, or 309 * Index into [UnlinkedUnit.references] for the type being referred to, or
309 * zero if this is a reference to a type parameter. 310 * zero if this is a reference to a type parameter.
310 * 311 *
311 * Note that since zero is also a valid index into 312 * Note that since zero is also a valid index into
(...skipping 1104 matching lines...) Expand 10 before | Expand all | Expand 10 after
1416 /** 1417 /**
1417 * If this variable is propagable, nonzero slot id identifying which entry in 1418 * If this variable is propagable, nonzero slot id identifying which entry in
1418 * [LinkedLibrary.types] contains the propagated type for this variable. If 1419 * [LinkedLibrary.types] contains the propagated type for this variable. If
1419 * there is no matching entry in [LinkedLibrary.types], then this variable's 1420 * there is no matching entry in [LinkedLibrary.types], then this variable's
1420 * propagated type is the same as its declared type. 1421 * propagated type is the same as its declared type.
1421 * 1422 *
1422 * Non-propagable variables have a [propagatedTypeSlot] of zero. 1423 * Non-propagable variables have a [propagatedTypeSlot] of zero.
1423 */ 1424 */
1424 int propagatedTypeSlot; 1425 int propagatedTypeSlot;
1425 } 1426 }
OLDNEW
« no previous file with comments | « pkg/analyzer/tool/summary/generate.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698