| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 library search.search_result; | 5 library search.search_result; |
| 6 | 6 |
| 7 import 'package:analysis_server/src/protocol2.dart'; | 7 import 'package:analysis_server/src/protocol.dart'; |
| 8 import 'package:analysis_server/src/services/search/search_engine.dart'; | 8 import 'package:analysis_server/src/services/search/search_engine.dart'; |
| 9 import 'package:analyzer/src/generated/element.dart' as engine; | 9 import 'package:analyzer/src/generated/element.dart' as engine; |
| 10 | 10 |
| 11 | 11 |
| 12 SearchResult searchResultFromMatch(SearchMatch match) { | 12 SearchResult searchResultFromMatch(SearchMatch match) { |
| 13 SearchResultKind kind = new SearchResultKind.fromEngine(match.kind); | 13 SearchResultKind kind = new SearchResultKind.fromEngine(match.kind); |
| 14 Location location = new Location.fromMatch(match); | 14 Location location = new Location.fromMatch(match); |
| 15 List<Element> path = _computePath(match.element); | 15 List<Element> path = _computePath(match.element); |
| 16 return new SearchResult(location, kind, !match.isResolved, path); | 16 return new SearchResult(location, kind, !match.isResolved, path); |
| 17 } | 17 } |
| 18 | 18 |
| 19 List<Element> _computePath(engine.Element element) { | 19 List<Element> _computePath(engine.Element element) { |
| 20 List<Element> path = <Element>[]; | 20 List<Element> path = <Element>[]; |
| 21 while (element != null) { | 21 while (element != null) { |
| 22 path.add(new Element.fromEngine(element)); | 22 path.add(new Element.fromEngine(element)); |
| 23 element = element.enclosingElement; | 23 element = element.enclosingElement; |
| 24 } | 24 } |
| 25 return path; | 25 return path; |
| 26 } | 26 } |
| OLD | NEW |