Index: pkg/analyzer/lib/src/index/store/split_store.dart |
diff --git a/pkg/analysis_server/lib/src/index/store/split_store.dart b/pkg/analyzer/lib/src/index/store/split_store.dart |
similarity index 95% |
rename from pkg/analysis_server/lib/src/index/store/split_store.dart |
rename to pkg/analyzer/lib/src/index/store/split_store.dart |
index ccb6bd9371c70060f5dddc132fd5d4640f828f4a..10aa57e36d6a253b5d68a37db16a203e78c4c694 100644 |
--- a/pkg/analysis_server/lib/src/index/store/split_store.dart |
+++ b/pkg/analyzer/lib/src/index/store/split_store.dart |
@@ -2,20 +2,21 @@ |
// 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. |
-library index.split_store; |
+library engine.src.index.split_store; |
import 'dart:async'; |
import 'dart:collection'; |
import 'dart:io'; |
import 'dart:typed_data'; |
-import 'package:analysis_server/src/index/store/collection.dart'; |
+import 'package:analyzer/index/index.dart'; |
+import 'package:analyzer/index/index_store.dart'; |
import 'package:analyzer/src/generated/element.dart'; |
import 'package:analyzer/src/generated/engine.dart'; |
-import 'package:analyzer/src/generated/index.dart'; |
import 'package:analyzer/src/generated/java_engine.dart'; |
import 'package:analyzer/src/generated/source.dart'; |
-import 'package:analysis_server/src/index/store/codec.dart'; |
+import 'package:analyzer/src/index/store/codec.dart'; |
+import 'package:analyzer/src/index/store/collection.dart'; |
/** |
@@ -50,22 +51,18 @@ abstract class FileManager { |
class FileNodeManager implements NodeManager { |
static int _VERSION = 1; |
- final ContextCodec contextCodec; |
+ final FileManager _fileManager; |
+ final Logger _logger; |
+ final ContextCodec contextCodec; |
final ElementCodec elementCodec; |
- |
final StringCodec stringCodec; |
- |
- final FileManager _fileManager; |
+ final RelationshipCodec _relationshipCodec; |
int _locationCount = 0; |
- final Logger _logger; |
- |
Map<String, int> _nodeLocationCounts = new HashMap<String, int>(); |
- final RelationshipCodec _relationshipCodec; |
- |
FileNodeManager(this._fileManager, this._logger, this.stringCodec, |
this.contextCodec, this.elementCodec, this._relationshipCodec); |
@@ -214,11 +211,11 @@ class IndexNode { |
final AnalysisContext context; |
final ElementCodec _elementCodec; |
+ final RelationshipCodec _relationshipCodec; |
Map<RelationKeyData, List<LocationData>> _relations = |
new HashMap<RelationKeyData, List<LocationData>>(); |
- final RelationshipCodec _relationshipCodec; |
IndexNode(this.context, this._elementCodec, this._relationshipCodec); |
@@ -239,19 +236,21 @@ class IndexNode { |
Map<RelationKeyData, List<LocationData>> get relations => _relations; |
/** |
- * Sets relations data. This method is used during loading data from a storage. |
+ * Sets relations data. |
+ * This method is used during loading data from a storage. |
*/ |
void set relations(Map<RelationKeyData, List<LocationData>> relations) { |
- this._relations.clear(); |
- this._relations.addAll(relations); |
+ _relations = relations; |
} |
/** |
- * Return the locations of the elements that have the given relationship with the given element. |
+ * Returns the locations of the elements that have the given relationship with |
+ * the given element. |
* |
- * @param element the the element that has the relationship with the locations to be returned |
- * @param relationship the [Relationship] between the given element and the locations to be |
- * returned |
+ * [element] - the the element that has the relationship with the locations to |
+ * be returned. |
+ * [relationship] - the [Relationship] between the given [element] and the |
+ * locations to be returned |
*/ |
List<Location> getRelationships(Element element, Relationship relationship) { |
// prepare key |
@@ -274,11 +273,11 @@ class IndexNode { |
} |
/** |
- * Records that the given element and location have the given relationship. |
+ * Records that the given [element] and [location] have the given [relationship]. |
* |
- * @param element the element that is related to the location |
- * @param relationship the [Relationship] between the element and the location |
- * @param location the [Location] where relationship happens |
+ * [element] - the [Element] that is related to the location. |
+ * [relationship] - the [Relationship] between [element] and [location]. |
+ * [location] - the [Location] where relationship happens. |
*/ |
void recordRelationship(Element element, Relationship relationship, |
Location location) { |
@@ -301,8 +300,8 @@ class IndexNode { |
*/ |
class LocationData { |
final int elementId; |
- final int length; |
final int offset; |
+ final int length; |
LocationData.forData(this.elementId, this.offset, this.length); |
@@ -606,13 +605,7 @@ class SplitIndexStore implements IndexStore { |
} |
} |
- @override |
- List<Location> getRelationships(Element element, Relationship relationship) { |
- // TODO(scheglov) make IndexStore interface async |
- return <Location>[]; |
- } |
- |
- Future<List<Location>> getRelationshipsAsync(Element element, |
+ Future<List<Location>> getRelationships(Element element, |
Relationship relationship) { |
// special support for UniverseElement |
if (identical(element, UniverseElement.INSTANCE)) { |