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

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

Issue 1691693002: Serialize local functions and variables. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Fixes for review comments. 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 1022 matching lines...) Expand 10 before | Expand all | Expand 10 after
1033 */ 1033 */
1034 bool get isStatic; 1034 bool get isStatic;
1035 1035
1036 /** 1036 /**
1037 * The kind of the executable (function/method, getter, setter, or 1037 * The kind of the executable (function/method, getter, setter, or
1038 * constructor). 1038 * constructor).
1039 */ 1039 */
1040 UnlinkedExecutableKind get kind; 1040 UnlinkedExecutableKind get kind;
1041 1041
1042 /** 1042 /**
1043 * The list of local functions.
1044 */
1045 List<UnlinkedExecutable> get localFunctions;
1046
1047 /**
1048 * The list of local variables.
1049 */
1050 List<UnlinkedVariable> get localVariables;
1051
1052 /**
1043 * Name of the executable. For setters, this includes the trailing "=". For 1053 * Name of the executable. For setters, this includes the trailing "=". For
1044 * named constructors, this excludes the class name and excludes the ".". 1054 * named constructors, this excludes the class name and excludes the ".".
1045 * For unnamed constructors, this is the empty string. 1055 * For unnamed constructors, this is the empty string.
1046 */ 1056 */
1047 String get name; 1057 String get name;
1048 1058
1049 /** 1059 /**
1050 * Offset of the executable name relative to the beginning of the file. For 1060 * Offset of the executable name relative to the beginning of the file. For
1051 * named constructors, this excludes the class name and excludes the ".". 1061 * named constructors, this excludes the class name and excludes the ".".
1052 * For unnamed constructors, this is the offset of the class name (i.e. the 1062 * For unnamed constructors, this is the offset of the class name (i.e. the
(...skipping 26 matching lines...) Expand all
1079 * Declared return type of the executable. Absent if the executable is a 1089 * Declared return type of the executable. Absent if the executable is a
1080 * constructor or the return type is implicit. 1090 * constructor or the return type is implicit.
1081 */ 1091 */
1082 EntityRef get returnType; 1092 EntityRef get returnType;
1083 1093
1084 /** 1094 /**
1085 * Type parameters of the executable, if any. Empty if support for generic 1095 * Type parameters of the executable, if any. Empty if support for generic
1086 * method syntax is disabled. 1096 * method syntax is disabled.
1087 */ 1097 */
1088 List<UnlinkedTypeParam> get typeParameters; 1098 List<UnlinkedTypeParam> get typeParameters;
1099
1100 /**
1101 * If a local function, the length of the visible range; zero otherwise.
1102 */
1103 int get visibleLength;
1104
1105 /**
1106 * If a local function, the beginning of the visible range; zero otherwise.
1107 */
1108 int get visibleOffset;
1089 } 1109 }
1090 1110
1091 /** 1111 /**
1092 * Enum used to indicate the kind of an executable. 1112 * Enum used to indicate the kind of an executable.
1093 */ 1113 */
1094 enum UnlinkedExecutableKind { 1114 enum UnlinkedExecutableKind {
1095 /** 1115 /**
1096 * Executable is a function or method. 1116 * Executable is a function or method.
1097 */ 1117 */
1098 functionOrMethod, 1118 functionOrMethod,
(...skipping 562 matching lines...) Expand 10 before | Expand all | Expand 10 after
1661 * propagated type is the same as its declared type. 1681 * propagated type is the same as its declared type.
1662 * 1682 *
1663 * Non-propagable variables have a [propagatedTypeSlot] of zero. 1683 * Non-propagable variables have a [propagatedTypeSlot] of zero.
1664 */ 1684 */
1665 int get propagatedTypeSlot; 1685 int get propagatedTypeSlot;
1666 1686
1667 /** 1687 /**
1668 * Declared type of the variable. Absent if the type is implicit. 1688 * Declared type of the variable. Absent if the type is implicit.
1669 */ 1689 */
1670 EntityRef get type; 1690 EntityRef get type;
1691
1692 /**
1693 * If a local variable, the length of the visible range; zero otherwise.
1694 */
1695 int get visibleLength;
1696
1697 /**
1698 * If a local variable, the beginning of the visible range; zero otherwise.
1699 */
1700 int get visibleOffset;
1671 } 1701 }
OLDNEW
« no previous file with comments | « pkg/analyzer/lib/src/summary/format.dart ('k') | pkg/analyzer/lib/src/summary/summarize_ast.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698