Index: pkg/analyzer/lib/src/dart/analysis/top_level_declarations.dart |
diff --git a/pkg/analyzer/lib/src/dart/analysis/top_level_declarations.dart b/pkg/analyzer/lib/src/dart/analysis/top_level_declarations.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..1ec5d068c3d7d21920f4017a3f349692f6e66106 |
--- /dev/null |
+++ b/pkg/analyzer/lib/src/dart/analysis/top_level_declarations.dart |
@@ -0,0 +1,39 @@ |
+// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file |
+// for details. All rights reserved. Use of this source code is governed by a |
+// BSD-style license that can be found in the LICENSE file. |
+ |
+import 'package:front_end/src/base/source.dart'; |
+ |
+/** |
+ * Information about a single top-level declaration. |
+ */ |
+class TopLevelDeclaration { |
+ final TopLevelDeclarationKind kind; |
+ final String name; |
+ |
+ TopLevelDeclaration(this.kind, this.name); |
+} |
+ |
+/** |
+ * Kind of a top-level declaration. |
+ * |
+ * We don't need it to be precise, just enough to support quick fixes. |
+ */ |
+enum TopLevelDeclarationKind { type, function, variable } |
+ |
+/** |
+ * Top-level declarations in the export namespace of a library. |
+ */ |
+class TopLevelLibraryDeclarations { |
+ /** |
+ * The source of the library. |
+ */ |
+ final Source source; |
+ |
+ /** |
+ * Top-level declarations in the export namespace of the library. |
+ */ |
+ final List<TopLevelDeclaration> declarations = []; |
+ |
+ TopLevelLibraryDeclarations(this.source); |
+} |