| OLD | NEW |
| 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: |
| (...skipping 432 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 443 * operations consume additional data from the other fields of this class. | 443 * operations consume additional data from the other fields of this class. |
| 444 */ | 444 */ |
| 445 class UnlinkedConst { | 445 class UnlinkedConst { |
| 446 /** | 446 /** |
| 447 * Sequence of operations to execute (starting with an empty stack) to form | 447 * Sequence of operations to execute (starting with an empty stack) to form |
| 448 * the constant value. | 448 * the constant value. |
| 449 */ | 449 */ |
| 450 List<UnlinkedConstOperation> operations; | 450 List<UnlinkedConstOperation> operations; |
| 451 | 451 |
| 452 /** | 452 /** |
| 453 * Sequence of 32-bit integers consumed by the operations `pushArgument`, | 453 * Sequence of unsigned 32-bit integers consumed by the operations |
| 454 * `pushInt`, `shiftOr`, `concatenate`, `invokeConstructor`, `makeList`, and | 454 * `pushArgument`, `pushInt`, `shiftOr`, `concatenate`, `invokeConstructor`, |
| 455 * `makeMap`. | 455 * `makeList`, and `makeMap`. |
| 456 */ | 456 */ |
| 457 List<int> ints; | 457 List<int> ints; |
| 458 | 458 |
| 459 /** | 459 /** |
| 460 * Sequence of 64-bit doubles consumed by the operation `pushDouble`. | 460 * Sequence of 64-bit doubles consumed by the operation `pushDouble`. |
| 461 */ | 461 */ |
| 462 List<double> doubles; | 462 List<double> doubles; |
| 463 | 463 |
| 464 /** | 464 /** |
| 465 * Sequence of strings consumed by the operations `pushString` and | 465 * Sequence of strings consumed by the operations `pushString` and |
| (...skipping 16 matching lines...) Expand all Loading... |
| 482 * context of a stack which is initially empty. | 482 * context of a stack which is initially empty. |
| 483 */ | 483 */ |
| 484 enum UnlinkedConstOperation { | 484 enum UnlinkedConstOperation { |
| 485 /** | 485 /** |
| 486 * Push the value of the n-th constructor argument (where n is obtained from | 486 * Push the value of the n-th constructor argument (where n is obtained from |
| 487 * [UnlinkedConst.ints]) onto the stack. | 487 * [UnlinkedConst.ints]) onto the stack. |
| 488 */ | 488 */ |
| 489 pushArgument, | 489 pushArgument, |
| 490 | 490 |
| 491 /** | 491 /** |
| 492 * Push the next value from [UnlinkedConst.ints] (a 32-bit signed integer) | 492 * Push the next value from [UnlinkedConst.ints] (a 32-bit unsigned integer) |
| 493 * onto the stack. | 493 * onto the stack. |
| 494 * | 494 * |
| 495 * Note that Dart supports integers larger than 32 bits; these are | 495 * Note that Dart supports integers larger than 32 bits; these are |
| 496 * represented by composing 32 bit values using the [shiftOr] operation. | 496 * represented by composing 32 bit values using the [shiftOr] operation. |
| 497 */ | 497 */ |
| 498 pushInt, | 498 pushInt, |
| 499 | 499 |
| 500 /** | 500 /** |
| 501 * Pop the top value off the stack, which should be an integer. Multiply it | 501 * Pop the top value off the stack, which should be an integer. Multiply it |
| 502 * by 2^32, "or" in the next value from [UnlinkedConst.ints] (which is | 502 * by 2^32, "or" in the next value from [UnlinkedConst.ints] (which is |
| (...skipping 914 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1417 /** | 1417 /** |
| 1418 * 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 |
| 1419 * [LinkedLibrary.types] contains the propagated type for this variable. If | 1419 * [LinkedLibrary.types] contains the propagated type for this variable. If |
| 1420 * 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 |
| 1421 * propagated type is the same as its declared type. | 1421 * propagated type is the same as its declared type. |
| 1422 * | 1422 * |
| 1423 * Non-propagable variables have a [propagatedTypeSlot] of zero. | 1423 * Non-propagable variables have a [propagatedTypeSlot] of zero. |
| 1424 */ | 1424 */ |
| 1425 int propagatedTypeSlot; | 1425 int propagatedTypeSlot; |
| 1426 } | 1426 } |
| OLD | NEW |