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

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

Issue 1651653002: Verify AST instead of constant values. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 10 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/test/src/summary/summary_common.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:
(...skipping 619 matching lines...) Expand 10 before | Expand all | Expand 10 after
630 630
631 /** 631 /**
632 * Pop the top 2 values from the stack, pass them to the predefined Dart 632 * Pop the top 2 values from the stack, pass them to the predefined Dart
633 * function `identical`, and push the result back onto the stack. 633 * function `identical`, and push the result back onto the stack.
634 */ 634 */
635 identical, 635 identical,
636 636
637 /** 637 /**
638 * Pop the top 2 values from the stack, evaluate `v1 == v2`, and push the 638 * Pop the top 2 values from the stack, evaluate `v1 == v2`, and push the
639 * result back onto the stack. 639 * result back onto the stack.
640 *
641 * This is also used to represent `v1 != v2`, by composition with [not].
642 */ 640 */
643 equal, 641 equal,
644 642
645 /** 643 /**
644 * Pop the top 2 values from the stack, evaluate `v1 != v2`, and push the
645 * result back onto the stack.
646 */
647 notEqual,
648
649 /**
646 * Pop the top value from the stack, compute its boolean negation, and push 650 * Pop the top value from the stack, compute its boolean negation, and push
647 * the result back onto the stack. 651 * the result back onto the stack.
648 */ 652 */
649 not, 653 not,
650 654
651 /** 655 /**
652 * Pop the top 2 values from the stack, compute `v1 && v2`, and push the 656 * Pop the top 2 values from the stack, compute `v1 && v2`, and push the
653 * result back onto the stack. 657 * result back onto the stack.
654 */ 658 */
655 and, 659 and,
(...skipping 803 matching lines...) Expand 10 before | Expand all | Expand 10 after
1459 int propagatedTypeSlot; 1463 int propagatedTypeSlot;
1460 1464
1461 /** 1465 /**
1462 * If this variable is inferrable, nonzero slot id identifying which entry in 1466 * If this variable is inferrable, nonzero slot id identifying which entry in
1463 * [LinkedLibrary.types] contains the inferred type for this variable. If 1467 * [LinkedLibrary.types] contains the inferred type for this variable. If
1464 * there is no matching entry in [LinkedLibrary.types], then no type was 1468 * there is no matching entry in [LinkedLibrary.types], then no type was
1465 * inferred for this variable, so its static type is `dynamic`. 1469 * inferred for this variable, so its static type is `dynamic`.
1466 */ 1470 */
1467 int inferredTypeSlot; 1471 int inferredTypeSlot;
1468 } 1472 }
OLDNEW
« no previous file with comments | « pkg/analyzer/test/src/summary/summary_common.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698