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

Side by Side Diff: pkg/analyzer/lib/src/summary/idl.dart

Issue 1807673006: Initial LibraryBundleCache implementation. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 9 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
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 6 * This file is an "idl" style description of the summary format. It
7 * contains abstract classes which declare the interface for reading data from 7 * contains abstract classes which declare the interface for reading data from
8 * summaries. It is parsed and transformed into code that implements the 8 * summaries. It is parsed and transformed into code that implements the
9 * summary format. 9 * summary format.
10 * 10 *
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 import 'format.dart' as generated; 46 import 'format.dart' as generated;
47 47
48 /** 48 /**
49 * Annotation describing information which is not part of Dart semantics; in 49 * Annotation describing information which is not part of Dart semantics; in
50 * other words, if this information (or any information it refers to) changes, 50 * other words, if this information (or any information it refers to) changes,
51 * static analysis and runtime behavior of the library are unaffected. 51 * static analysis and runtime behavior of the library are unaffected.
52 */ 52 */
53 const informative = null; 53 const informative = null;
54 54
55 /** 55 /**
56 * Information about URIs referenced by a library.
57 */
58 @TopLevel('CaLU')
59 abstract class CacheLibraryUris extends base.SummaryClass {
60 factory CacheLibraryUris.fromBuffer(List<int> buffer) =>
61 generated.readCacheLibraryUris(buffer);
62
63 /**
64 * The list of exported URIs, e.g. `dart:core`, or `foo/bar.dart`,
65 * or `package:foo/bar.dart`.
66 */
67 @Id(1)
68 List<String> get exportedUris;
69
70 /**
71 * The list of explicitly imported URIs, e.g. `dart:core`, or `foo/bar.dart`,
72 * or `package:foo/bar.dart`.
73 */
74 @Id(0)
75 List<String> get importedUris;
76
77 /**
78 * The list of part URIs, e.g. `foo/bar.dart`.
79 */
80 @Id(2)
81 List<String> get partUris;
82 }
83
84 /**
56 * Information about an element code range. 85 * Information about an element code range.
57 */ 86 */
58 abstract class CodeRange extends base.SummaryClass { 87 abstract class CodeRange extends base.SummaryClass {
59 /** 88 /**
60 * Length of the element code. 89 * Length of the element code.
61 */ 90 */
62 @Id(1) 91 @Id(1)
63 int get length; 92 int get length;
64 93
65 /** 94 /**
(...skipping 700 matching lines...) Expand 10 before | Expand all | Expand 10 after
766 795
767 /** 796 /**
768 * Each item of this list is the index into [PackageIndex.elementUnits] and 797 * Each item of this list is the index into [PackageIndex.elementUnits] and
769 * [PackageIndex.elementOffsets]. The list is sorted in ascending order, so 798 * [PackageIndex.elementOffsets]. The list is sorted in ascending order, so
770 * that the client can quickly find element references in this [UnitIndex]. 799 * that the client can quickly find element references in this [UnitIndex].
771 */ 800 */
772 @Id(3) 801 @Id(3)
773 List<int> get usedElements; 802 List<int> get usedElements;
774 803
775 /** 804 /**
805 * Each item of this list is the `true` if the corresponding name usage
Brian Wilkerson 2016/03/16 22:36:34 nit: "is the" --> "is"
806 * is qualified with some prefix.
807 */
808 @Id(12)
809 List<bool> get usedNameIsQualifiedFlags;
810
811 /**
776 * Each item of this list is the kind of the name usage. 812 * Each item of this list is the kind of the name usage.
777 */ 813 */
778 @Id(10) 814 @Id(10)
779 List<IndexRelationKind> get usedNameKinds; 815 List<IndexRelationKind> get usedNameKinds;
780 816
781 /** 817 /**
782 * Each item of this list is the offset of the name usage relative to the 818 * Each item of this list is the offset of the name usage relative to the
783 * beginning of the file. 819 * beginning of the file.
784 */ 820 */
785 @Id(9) 821 @Id(9)
786 List<int> get usedNameOffsets; 822 List<int> get usedNameOffsets;
787 823
788 /** 824 /**
789 * Each item of this list is the index into [PackageIndex.strings] for a 825 * Each item of this list is the index into [PackageIndex.strings] for a
790 * used name. The list is sorted in ascending order, so that the client can 826 * used name. The list is sorted in ascending order, so that the client can
791 * quickly find name uses in this [UnitIndex]. 827 * quickly find name uses in this [UnitIndex].
792 */ 828 */
793 @Id(8) 829 @Id(8)
794 List<int> get usedNames; 830 List<int> get usedNames;
795
796 /**
797 * Each item of this list is the `true` if the corresponding name usage
798 * is qualified with some prefix.
799 */
800 @Id(12)
801 List<bool> get usedNameIsQualifiedFlags;
802 } 831 }
803 832
804 /** 833 /**
805 * Unlinked summary information about a class declaration. 834 * Unlinked summary information about a class declaration.
806 */ 835 */
807 abstract class UnlinkedClass extends base.SummaryClass { 836 abstract class UnlinkedClass extends base.SummaryClass {
808 /** 837 /**
809 * Annotations for this class. 838 * Annotations for this class.
810 */ 839 */
811 @Id(5) 840 @Id(5)
(...skipping 1578 matching lines...) Expand 10 before | Expand all | Expand 10 after
2390 */ 2419 */
2391 @Id(11) 2420 @Id(11)
2392 int get visibleLength; 2421 int get visibleLength;
2393 2422
2394 /** 2423 /**
2395 * If a local variable, the beginning of the visible range; zero otherwise. 2424 * If a local variable, the beginning of the visible range; zero otherwise.
2396 */ 2425 */
2397 @Id(12) 2426 @Id(12)
2398 int get visibleOffset; 2427 int get visibleOffset;
2399 } 2428 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698