| // Copyright (c) 2015, 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. |
| |
| library analyzer.task.dart; |
| |
| import 'package:analyzer/src/generated/ast.dart'; |
| import 'package:analyzer/src/generated/element.dart'; |
| import 'package:analyzer/src/generated/error.dart'; |
| import 'package:analyzer/src/generated/scanner.dart'; |
| import 'package:analyzer/src/generated/source.dart'; |
| import 'package:analyzer/task/model.dart'; |
| |
| /** |
| * The analysis errors associated with a target. |
| * |
| * The value combines errors represented by multiple other results. |
| */ |
| // TODO(brianwilkerson) If we want to associate errors with targets smaller than |
| // a file, we will need other contribution points to collect them. In which case |
| // we might want to rename this and/or document that it applies to files. |
| final CompositeResultDescriptor<List<AnalysisError>> DART_ERRORS = |
| new CompositeResultDescriptor<List<AnalysisError>>('DART_ERRORS'); |
| |
| /** |
| * The sources of the libraries that are exported from a library. |
| * |
| * The list will be empty if there are no exported libraries, but will not be |
| * `null`. |
| * |
| * The result is only available for targets representing a Dart library. |
| */ |
| final ListResultDescriptor<Source> EXPORTED_LIBRARIES = |
| new ListResultDescriptor<Source>('EXPORTED_LIBRARIES', Source.EMPTY_ARRAY); |
| |
| /** |
| * The sources of the libraries that are imported into a library. |
| * |
| * Not `null`. |
| * The default value is empty. |
| * When computed, this list will always contain at least `dart:core` source. |
| * |
| * The result is only available for targets representing a Dart library. |
| */ |
| final ListResultDescriptor<Source> IMPORTED_LIBRARIES = |
| new ListResultDescriptor<Source>('IMPORTED_LIBRARIES', Source.EMPTY_ARRAY); |
| |
| /** |
| * The sources of the parts that are included in a library. |
| * |
| * The list will be empty if there are no parts, but will not be `null`. The |
| * list does *not* include the source for the defining compilation unit. |
| * |
| * The result is only available for targets representing a Dart library. |
| */ |
| final ListResultDescriptor<Source> INCLUDED_PARTS = |
| new ListResultDescriptor<Source>('INCLUDED_PARTS', Source.EMPTY_ARRAY); |
| |
| /** |
| * A flag specifying whether a library is dependent on code that is only |
| * available in a client. |
| * |
| * The result is only available for targets representing a Dart library. |
| */ |
| final ResultDescriptor<bool> IS_CLIENT = |
| new ResultDescriptor<bool>('IS_CLIENT', false); |
| |
| /** |
| * A flag specifying whether a library is launchable. |
| * |
| * The result is only available for targets representing a Dart library. |
| */ |
| final ResultDescriptor<bool> IS_LAUNCHABLE = |
| new ResultDescriptor<bool>('IS_LAUNCHABLE', false); |
| |
| /** |
| * The fully built [LibraryElement] associated with a library. |
| * |
| * The result is only available for targets representing a Dart library. |
| */ |
| final ResultDescriptor<LibraryElement> LIBRARY_ELEMENT = |
| new ResultDescriptor<LibraryElement>('LIBRARY_ELEMENT', null); |
| |
| /** |
| * The compilation unit AST produced while parsing a compilation unit. |
| * |
| * The AST structure will not have resolution information associated with it. |
| * |
| * The result is only available for targets representing a Dart compilation unit. |
| */ |
| final ResultDescriptor<CompilationUnit> PARSED_UNIT = |
| new ResultDescriptor<CompilationUnit>('PARSED_UNIT', null); |
| |
| /** |
| * The resolved [CompilationUnit] associated with a unit. |
| * |
| * The result is only available for targets representing a unit. |
| */ |
| final ResultDescriptor<CompilationUnit> RESOLVED_UNIT = |
| new ResultDescriptor<CompilationUnit>('RESOLVED_UNIT', null); |
| |
| /** |
| * The token stream produced while scanning a compilation unit. |
| * |
| * The value is the first token in the file, or the special end-of-file marker |
| * at the end of the stream if the file does not contain any tokens. |
| * |
| * The result is only available for targets representing a Dart compilation unit. |
| */ |
| final ResultDescriptor<Token> TOKEN_STREAM = |
| new ResultDescriptor<Token>('TOKEN_STREAM', null); |
| |
| /** |
| * The sources of the Dart files that a library consists of. |
| * |
| * The list will include the source of the defining unit and [INCLUDED_PARTS]. |
| * So, it is never empty or `null`. |
| * |
| * The result is only available for targets representing a Dart library. |
| */ |
| final ListResultDescriptor<Source> UNITS = |
| new ListResultDescriptor<Source>('UNITS', Source.EMPTY_ARRAY); |