| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // BSD-style license that can be found in the LICENSE file. | |
| 4 | |
| 5 /** | |
| 6 * Support for client code that extends the set of files being analyzed by the | |
| 7 * analysis server. | |
| 8 * | |
| 9 * Plugins can register a function that takes a [File] and returns a [bool] | |
| 10 * indicating whether the plugin is interested in having that file be analyzed. | |
| 11 * The analysis server will invoke the contributed functions and analyze the | |
| 12 * file if at least one of the functions returns `true`. (The server is not | |
| 13 * required to invoke every function with every file.) | |
| 14 * | |
| 15 * If a plugin is interested in analyzing a certain kind of files, it needs to | |
| 16 * ensure that files of that kind will be analyzed. It should register a | |
| 17 * function by including code like the following in the plugin's | |
| 18 * registerExtensions method: | |
| 19 * | |
| 20 * @override | |
| 21 * void registerExtensions(RegisterExtension registerExtension) { | |
| 22 * ... | |
| 23 * registerExtension( | |
| 24 * ANALYZE_FILE_EXTENSION_POINT_ID, | |
| 25 * (File file) => file.path.endsWith(...)); | |
| 26 * ... | |
| 27 * } | |
| 28 */ | |
| 29 library analysis_server.plugin.analyzed_files; | |
| 30 | |
| 31 import 'package:analysis_server/src/plugin/server_plugin.dart'; | |
| 32 import 'package:analyzer/file_system/file_system.dart'; | |
| 33 import 'package:plugin/plugin.dart'; | |
| 34 | |
| 35 /** | |
| 36 * The identifier of the extension point that allows plugins to register | |
| 37 * functions that can cause files to be analyzed. The object used as an | |
| 38 * extension must be a [ShouldAnalyzeFile] function. | |
| 39 */ | |
| 40 final String ANALYZE_FILE_EXTENSION_POINT_ID = Plugin.join( | |
| 41 ServerPlugin.UNIQUE_IDENTIFIER, ServerPlugin.ANALYZE_FILE_EXTENSION_POINT); | |
| 42 | |
| 43 /** | |
| 44 * A function that returns `true` if the given [file] should be analyzed. | |
| 45 */ | |
| 46 typedef bool ShouldAnalyzeFile(File file); | |
| OLD | NEW |