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

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

Issue 1740923002: Propertly summarize LUB function types. (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
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 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 * If this [EntityRef] is contained within [LinkedUnit.types], slot id (which 115 * If this [EntityRef] is contained within [LinkedUnit.types], slot id (which
116 * is unique within the compilation unit) identifying the target of type 116 * is unique within the compilation unit) identifying the target of type
117 * propagation or type inference with which this [EntityRef] is associated. 117 * propagation or type inference with which this [EntityRef] is associated.
118 * 118 *
119 * Otherwise zero. 119 * Otherwise zero.
120 */ 120 */
121 @Id(2) 121 @Id(2)
122 int get slot; 122 int get slot;
123 123
124 /** 124 /**
125 * If this [EntityRef] is a reference to a function type whose
126 * [FunctionElement] is not in any library (e.g. a function type that was
127 * synthesized by a LUB computation), the function parameters. Otherwise
128 * empty.
129 */
130 @Id(6)
131 List<UnlinkedParam> get syntheticParams;
132
133 /**
134 * If this [EntityRef] is a reference to a function type whose
135 * [FunctionElement] is not in any library (e.g. a function type that was
136 * synthesized by a LUB computation), the return type of the function.
137 * Otherwise `null`.
138 */
139 @Id(5)
140 EntityRef get syntheticReturnType;
141
142 /**
125 * If this is an instantiation of a generic type or generic executable, the 143 * If this is an instantiation of a generic type or generic executable, the
126 * type arguments used to instantiate it. Trailing type arguments of type 144 * type arguments used to instantiate it. Trailing type arguments of type
127 * `dynamic` are omitted. 145 * `dynamic` are omitted.
128 */ 146 */
129 @Id(1) 147 @Id(1)
130 List<EntityRef> get typeArguments; 148 List<EntityRef> get typeArguments;
131 } 149 }
132 150
133 /** 151 /**
134 * Enum used to indicate the kind of index relation. 152 * Enum used to indicate the kind of index relation.
(...skipping 1989 matching lines...) Expand 10 before | Expand all | Expand 10 after
2124 */ 2142 */
2125 @Id(11) 2143 @Id(11)
2126 int get visibleLength; 2144 int get visibleLength;
2127 2145
2128 /** 2146 /**
2129 * If a local variable, the beginning of the visible range; zero otherwise. 2147 * If a local variable, the beginning of the visible range; zero otherwise.
2130 */ 2148 */
2131 @Id(12) 2149 @Id(12)
2132 int get visibleOffset; 2150 int get visibleOffset;
2133 } 2151 }
OLDNEW
« no previous file with comments | « pkg/analyzer/lib/src/summary/format.dart ('k') | pkg/analyzer/lib/src/summary/resynthesize.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698