Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(335)

Unified Diff: pkg/analyzer_experimental/lib/src/generated/engine.dart

Issue 16256021: Remove trailing spaces in analyzer_experimental (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/analyzer_experimental/lib/src/generated/engine.dart
diff --git a/pkg/analyzer_experimental/lib/src/generated/engine.dart b/pkg/analyzer_experimental/lib/src/generated/engine.dart
index 8ecb0912286b5a2b79e2e50e4f2d54fe6c44219f..526f084dfac13e501e1b709dfaf1ffb38bcf269d 100644
--- a/pkg/analyzer_experimental/lib/src/generated/engine.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/engine.dart
@@ -1,8 +1,6 @@
// This code was auto-generated, is not intended to be edited, and is subject to
// significant change. Please see the README file for more information.
-
library engine;
-
import 'dart:collection' show HasNextIterator;
import 'java_core.dart';
import 'java_engine.dart';
@@ -16,41 +14,39 @@ import 'sdk.dart' show DartSdk;
import 'element.dart';
import 'resolver.dart';
import 'html.dart' show XmlTagNode, XmlAttributeNode, RecursiveXmlVisitor, HtmlScanner, HtmlScanResult, HtmlParser, HtmlParseResult, HtmlUnit;
-
-
/**
* The unique instance of the class {@code AnalysisEngine} serves as the entry point for the
* functionality provided by the analysis engine.
* @coverage dart.engine
*/
class AnalysisEngine {
-
+
/**
* The suffix used for Dart source files.
*/
static String SUFFIX_DART = "dart";
-
+
/**
* The short suffix used for HTML files.
*/
static String SUFFIX_HTM = "htm";
-
+
/**
* The long suffix used for HTML files.
*/
static String SUFFIX_HTML = "html";
-
+
/**
* The unique instance of this class.
*/
static AnalysisEngine _UniqueInstance = new AnalysisEngine();
-
+
/**
* Return the unique instance of this class.
* @return the unique instance of this class
*/
static AnalysisEngine get instance => _UniqueInstance;
-
+
/**
* Return {@code true} if the given file name is assumed to contain Dart source code.
* @param fileName the name of the file being tested
@@ -62,7 +58,7 @@ class AnalysisEngine {
}
return javaStringEqualsIgnoreCase(FileNameUtilities.getExtension(fileName), SUFFIX_DART);
}
-
+
/**
* Return {@code true} if the given file name is assumed to contain HTML.
* @param fileName the name of the file being tested
@@ -75,12 +71,12 @@ class AnalysisEngine {
String extension = FileNameUtilities.getExtension(fileName);
return javaStringEqualsIgnoreCase(extension, SUFFIX_HTML) || javaStringEqualsIgnoreCase(extension, SUFFIX_HTM);
}
-
+
/**
* The logger that should receive information about errors within the analysis engine.
*/
Logger _logger = Logger.NULL;
-
+
/**
* Create a new context in which analysis can be performed.
* @return the analysis context that was created
@@ -92,13 +88,13 @@ class AnalysisEngine {
return new InstrumentedAnalysisContextImpl.con1(new DelegatingAnalysisContextImpl());
}
}
-
+
/**
* Return the logger that should receive information about errors within the analysis engine.
* @return the logger that should receive information about errors within the analysis engine
*/
Logger get logger => _logger;
-
+
/**
* Set the logger that should receive information about errors within the analysis engine to the
* given logger.
@@ -109,7 +105,6 @@ class AnalysisEngine {
this._logger = logger2 == null ? Logger.NULL : logger2;
}
}
-
/**
* The interface {@code AnalysisContext} defines the behavior of objects that represent a context in
* which a single analysis can be performed and incrementally maintained. The context includes such
@@ -143,14 +138,14 @@ class AnalysisEngine {
* proposed future state, such as the state after a refactoring.
*/
abstract class AnalysisContext {
-
+
/**
* Apply the changes specified by the given change set to this context. Any analysis results that
* have been invalidated by these changes will be removed.
* @param changeSet a description of the changes that are to be applied
*/
void applyChanges(ChangeSet changeSet);
-
+
/**
* Return the documentation comment for the given element as it appears in the original source
* (complete with the beginning and ending delimiters), or {@code null} if the element does not
@@ -162,7 +157,7 @@ abstract class AnalysisContext {
* analysis could not be performed
*/
String computeDocumentationComment(Element element);
-
+
/**
* Return an array containing all of the errors associated with the given source. If the errors
* are not already known then the source will be analyzed in order to determine the errors
@@ -174,7 +169,7 @@ abstract class AnalysisContext {
* @see #getErrors(Source)
*/
List<AnalysisError> computeErrors(Source source);
-
+
/**
* Return the element model corresponding to the HTML file defined by the given source. If the
* element model does not yet exist it will be created. The process of creating an element model
@@ -188,7 +183,7 @@ abstract class AnalysisContext {
* @see #getHtmlElement(Source)
*/
HtmlElement computeHtmlElement(Source source);
-
+
/**
* Return the kind of the given source, computing it's kind if it is not already known. Return{@link SourceKind#UNKNOWN} if the source is not contained in this context.
* @param source the source whose kind is to be returned
@@ -196,7 +191,7 @@ abstract class AnalysisContext {
* @see #getKindOf(Source)
*/
SourceKind computeKindOf(Source source);
-
+
/**
* Return the element model corresponding to the library defined by the given source. If the
* element model does not yet exist it will be created. The process of creating an element model
@@ -209,7 +204,7 @@ abstract class AnalysisContext {
* @see #getLibraryElement(Source)
*/
LibraryElement computeLibraryElement(Source source);
-
+
/**
* Return the line information for the given source, or {@code null} if the source is not of a
* recognized kind (neither a Dart nor HTML file). If the line information was not previously
@@ -222,7 +217,7 @@ abstract class AnalysisContext {
* @see #getLineInfo(Source)
*/
LineInfo computeLineInfo(Source source);
-
+
/**
* Create a new context in which analysis can be performed. Any sources in the specified container
* will be removed from this context and added to the newly created context.
@@ -231,13 +226,13 @@ abstract class AnalysisContext {
* @return the analysis context that was created
*/
AnalysisContext extractContext(SourceContainer container);
-
+
/**
* Return the set of analysis options controlling the behavior of this context.
* @return the set of analysis options controlling the behavior of this context
*/
AnalysisOptions get analysisOptions;
-
+
/**
* Return the element referenced by the given location, or {@code null} if the element is not
* immediately available or if there is no element with the given location. The latter condition
@@ -248,7 +243,7 @@ abstract class AnalysisContext {
* @return the element referenced by the given location
*/
Element getElement(ElementLocation location);
-
+
/**
* Return an analysis error info containing the array of all of the errors and the line info
* associated with the given source. The array of errors will be empty if the source is not known
@@ -259,7 +254,7 @@ abstract class AnalysisContext {
* @see #computeErrors(Source)
*/
AnalysisErrorInfo getErrors(Source source);
-
+
/**
* Return the element model corresponding to the HTML file defined by the given source, or{@code null} if the source does not represent an HTML file, the element representing the file
* has not yet been created, or the analysis of the HTML file failed for some reason.
@@ -268,7 +263,7 @@ abstract class AnalysisContext {
* @see #computeHtmlElement(Source)
*/
HtmlElement getHtmlElement(Source source);
-
+
/**
* Return the sources for the HTML files that reference the given compilation unit. If the source
* does not represent a Dart source or is not known to this context, the returned array will be
@@ -277,14 +272,14 @@ abstract class AnalysisContext {
* @return the sources for the HTML files that reference the given compilation unit
*/
List<Source> getHtmlFilesReferencing(Source source);
-
+
/**
* Return an array containing all of the sources known to this context that represent HTML files.
* The contents of the array can be incomplete.
* @return the sources known to this context that represent HTML files
*/
List<Source> get htmlSources;
-
+
/**
* Return the kind of the given source, or {@code null} if the kind is not known to this context.
* @param source the source whose kind is to be returned
@@ -292,7 +287,7 @@ abstract class AnalysisContext {
* @see #computeKindOf(Source)
*/
SourceKind getKindOf(Source source);
-
+
/**
* Return an array containing all of the sources known to this context that represent the defining
* compilation unit of a library that can be run within a browser. The sources that are returned
@@ -303,7 +298,7 @@ abstract class AnalysisContext {
* library that can be run within a browser
*/
List<Source> get launchableClientLibrarySources;
-
+
/**
* Return an array containing all of the sources known to this context that represent the defining
* compilation unit of a library that can be run outside of a browser. The contents of the array
@@ -312,7 +307,7 @@ abstract class AnalysisContext {
* library that can be run outside of a browser
*/
List<Source> get launchableServerLibrarySources;
-
+
/**
* Return the sources for the defining compilation units of any libraries of which the given
* source is a part. The array will normally contain a single library because most Dart sources
@@ -325,7 +320,7 @@ abstract class AnalysisContext {
* @return the sources for the libraries containing the given source
*/
List<Source> getLibrariesContaining(Source source);
-
+
/**
* Return the sources for the defining compilation units of any libraries that depend on the given
* library. One library depends on another if it either imports or exports that library.
@@ -334,7 +329,7 @@ abstract class AnalysisContext {
* @return the sources for the libraries that depend on the given library
*/
List<Source> getLibrariesDependingOn(Source librarySource);
-
+
/**
* Return the element model corresponding to the library defined by the given source, or{@code null} if the element model does not currently exist or if the library cannot be analyzed
* for some reason.
@@ -342,7 +337,7 @@ abstract class AnalysisContext {
* @return the element model corresponding to the library defined by the given source
*/
LibraryElement getLibraryElement(Source source);
-
+
/**
* Return an array containing all of the sources known to this context that represent the defining
* compilation unit of a library. The contents of the array can be incomplete.
@@ -350,7 +345,7 @@ abstract class AnalysisContext {
* library
*/
List<Source> get librarySources;
-
+
/**
* Return the line information for the given source, or {@code null} if the line information is
* not known. The line information is used to map offsets from the beginning of the source to line
@@ -360,7 +355,7 @@ abstract class AnalysisContext {
* @see #computeLineInfo(Source)
*/
LineInfo getLineInfo(Source source);
-
+
/**
* Return a fully resolved AST for a single compilation unit within the given library, or{@code null} if the resolved AST is not already computed.
* @param unitSource the source of the compilation unit
@@ -369,7 +364,7 @@ abstract class AnalysisContext {
* @see #resolveCompilationUnit(Source,LibraryElement)
*/
CompilationUnit getResolvedCompilationUnit(Source unitSource, LibraryElement library);
-
+
/**
* Return a fully resolved AST for a single compilation unit within the given library, or{@code null} if the resolved AST is not already computed.
* @param unitSource the source of the compilation unit
@@ -379,13 +374,13 @@ abstract class AnalysisContext {
* @see #resolveCompilationUnit(Source,Source)
*/
CompilationUnit getResolvedCompilationUnit2(Source unitSource, Source librarySource);
-
+
/**
* Return the source factory used to create the sources that can be analyzed in this context.
* @return the source factory used to create the sources that can be analyzed in this context
*/
SourceFactory get sourceFactory;
-
+
/**
* Return {@code true} if the given source is known to be the defining compilation unit of a
* library that can be run on a client (references 'dart:html', either directly or indirectly).
@@ -397,7 +392,7 @@ abstract class AnalysisContext {
* @return {@code true} if the given source is known to be a library that can be run on a client
*/
bool isClientLibrary(Source librarySource);
-
+
/**
* Return {@code true} if the given source is known to be the defining compilation unit of a
* library that can be run on the server (does not reference 'dart:html', either directly or
@@ -411,7 +406,7 @@ abstract class AnalysisContext {
* @return {@code true} if the given source is known to be a library that can be run on the server
*/
bool isServerLibrary(Source librarySource);
-
+
/**
* Add the sources contained in the specified context to this context's collection of sources.
* This method is called when an existing context's pubspec has been removed, and the contained
@@ -419,7 +414,7 @@ abstract class AnalysisContext {
* @param context the context being merged
*/
void mergeContext(AnalysisContext context);
-
+
/**
* Parse a single source to produce an AST structure. The resulting AST structure may or may not
* be resolved, and may have a slightly different structure depending upon whether it is resolved.
@@ -428,7 +423,7 @@ abstract class AnalysisContext {
* @throws AnalysisException if the analysis could not be performed
*/
CompilationUnit parseCompilationUnit(Source source);
-
+
/**
* Parse a single HTML source to produce an AST structure. The resulting HTML AST structure may or
* may not be resolved, and may have a slightly different structure depending upon whether it is
@@ -438,7 +433,7 @@ abstract class AnalysisContext {
* @throws AnalysisException if the analysis could not be performed
*/
HtmlUnit parseHtmlUnit(Source source);
-
+
/**
* Perform the next unit of work required to keep the analysis results up-to-date and return
* information about the consequent changes to the analysis results. If there were no results the
@@ -447,7 +442,7 @@ abstract class AnalysisContext {
* @return an array containing notices of changes to the analysis results
*/
List<ChangeNotice> performAnalysisTask();
-
+
/**
* Parse and resolve a single source within the given context to produce a fully resolved AST.
* @param unitSource the source to be parsed and resolved
@@ -458,7 +453,7 @@ abstract class AnalysisContext {
* @see #getResolvedCompilationUnit(Source,LibraryElement)
*/
CompilationUnit resolveCompilationUnit(Source unitSource, LibraryElement library);
-
+
/**
* Parse and resolve a single source within the given context to produce a fully resolved AST.
* @param unitSource the source to be parsed and resolved
@@ -470,7 +465,7 @@ abstract class AnalysisContext {
* @see #getResolvedCompilationUnit(Source,Source)
*/
CompilationUnit resolveCompilationUnit2(Source unitSource, Source librarySource);
-
+
/**
* Parse and resolve a single source within the given context to produce a fully resolved AST.
* @param htmlSource the source to be parsed and resolved
@@ -478,14 +473,14 @@ abstract class AnalysisContext {
* @throws AnalysisException if the analysis could not be performed
*/
HtmlUnit resolveHtmlUnit(Source htmlSource);
-
+
/**
* Set the set of analysis options controlling the behavior of this context to the given options.
* Clients can safely assume that all necessary analysis results have been invalidated.
* @param options the set of analysis options that will control the behavior of this context
*/
void set analysisOptions(AnalysisOptions options);
-
+
/**
* Set the contents of the given source to the given contents and mark the source as having
* changed. This has the effect of overriding the default contents of the source. If the contents
@@ -494,7 +489,7 @@ abstract class AnalysisContext {
* @param contents the new contents of the source
*/
void setContents(Source source, String contents);
-
+
/**
* Set the source factory used to create the sources that can be analyzed in this context to the
* given source factory. Clients can safely assume that all analysis results have been
@@ -503,7 +498,7 @@ abstract class AnalysisContext {
* context
*/
void set sourceFactory(SourceFactory factory);
-
+
/**
* Given a collection of sources with content that has changed, return an {@link Iterable}identifying the sources that need to be resolved.
* @param changedSources an array of sources (not {@code null}, contains no {@code null}s)
@@ -511,19 +506,18 @@ abstract class AnalysisContext {
*/
Iterable<Source> sourcesToResolve(List<Source> changedSources);
}
-
/**
* The interface {@code AnalysisErrorInfo} contains the analysis errors and line information for the
* errors.
*/
abstract class AnalysisErrorInfo {
-
+
/**
* Return the errors that as a result of the analysis, or {@code null} if there were no errors.
* @return the errors as a result of the analysis
*/
List<AnalysisError> get errors;
-
+
/**
* Return the line information associated with the errors, or {@code null} if there were no
* errors.
@@ -531,14 +525,13 @@ abstract class AnalysisErrorInfo {
*/
LineInfo get lineInfo;
}
-
/**
* Instances of the class {@code AnalysisException} represent an exception that occurred during the
* analysis of one or more sources.
* @coverage dart.engine
*/
class AnalysisException extends JavaException {
-
+
/**
* Initialize a newly created exception.
*/
@@ -547,7 +540,7 @@ class AnalysisException extends JavaException {
}
_jtd_constructor_125_impl() {
}
-
+
/**
* Initialize a newly created exception to have the given message.
* @param message the message associated with the exception
@@ -557,7 +550,7 @@ class AnalysisException extends JavaException {
}
_jtd_constructor_126_impl(String message) {
}
-
+
/**
* Initialize a newly created exception to have the given message and cause.
* @param message the message associated with the exception
@@ -568,7 +561,7 @@ class AnalysisException extends JavaException {
}
_jtd_constructor_127_impl(String message, Exception cause) {
}
-
+
/**
* Initialize a newly created exception to have the given cause.
* @param cause the underlying exception that caused this exception
@@ -579,13 +572,12 @@ class AnalysisException extends JavaException {
_jtd_constructor_128_impl(Exception cause) {
}
}
-
/**
* The interface {@code AnalysisOptions} defines the behavior of objects that provide access to a
* set of analysis options used to control the behavior of an analysis context.
*/
abstract class AnalysisOptions {
-
+
/**
* Return {@code true} if analysis is to use strict mode. In strict mode, error reporting is based
* exclusively on the static type information.
@@ -593,55 +585,53 @@ abstract class AnalysisOptions {
*/
bool get strictMode;
}
-
/**
* The interface {@code ChangeNotice} defines the behavior of objects that represent a change to the
* analysis results associated with a given source.
* @coverage dart.engine
*/
abstract class ChangeNotice implements AnalysisErrorInfo {
-
+
/**
* Return the fully resolved AST that changed as a result of the analysis, or {@code null} if the
* AST was not changed.
* @return the fully resolved AST that changed as a result of the analysis
*/
CompilationUnit get compilationUnit;
-
+
/**
* Return the source for which the result is being reported.
* @return the source for which the result is being reported
*/
Source get source;
}
-
/**
* Instances of the class {@code ChangeSet} indicate what sources have been added, changed, or
* removed.
* @coverage dart.engine
*/
class ChangeSet {
-
+
/**
* A list containing the sources that have been added.
*/
List<Source> _added2 = new List<Source>();
-
+
/**
* A list containing the sources that have been changed.
*/
List<Source> _changed2 = new List<Source>();
-
+
/**
* A list containing the sources that have been removed.
*/
List<Source> _removed2 = new List<Source>();
-
+
/**
* A list containing the source containers specifying additional sources that have been removed.
*/
List<SourceContainer> _removedContainers = new List<SourceContainer>();
-
+
/**
* Record that the specified source has been added and that it's content is the default contents
* of the source.
@@ -650,7 +640,7 @@ class ChangeSet {
void added(Source source) {
_added2.add(source);
}
-
+
/**
* Record that the specified source has been changed and that it's content is the default contents
* of the source.
@@ -659,37 +649,37 @@ class ChangeSet {
void changed(Source source) {
_changed2.add(source);
}
-
+
/**
* Return a collection of the sources that have been added.
* @return a collection of the sources that have been added
*/
List<Source> get added3 => _added2;
-
+
/**
* Return a collection of sources that have been changed.
* @return a collection of sources that have been changed
*/
List<Source> get changed3 => _changed2;
-
+
/**
* Return a list containing the sources that were removed.
* @return a list containing the sources that were removed
*/
List<Source> get removed => _removed2;
-
+
/**
* Return a list containing the source containers that were removed.
* @return a list containing the source containers that were removed
*/
List<SourceContainer> get removedContainers => _removedContainers;
-
+
/**
* Return {@code true} if this change set does not contain any changes.
* @return {@code true} if this change set does not contain any changes
*/
bool isEmpty() => _added2.isEmpty && _changed2.isEmpty && _removed2.isEmpty && _removedContainers.isEmpty;
-
+
/**
* Record that the specified source has been removed.
* @param source the source that was removed
@@ -699,7 +689,7 @@ class ChangeSet {
_removed2.add(source);
}
}
-
+
/**
* Record that the specified source container has been removed.
* @param container the source container that was removed
@@ -710,81 +700,80 @@ class ChangeSet {
}
}
}
-
/**
* The interface {@code DartEntry} defines the behavior of objects that maintain the information
* cached by an analysis context about an individual Dart file.
* @coverage dart.engine
*/
abstract class DartEntry implements SourceEntry {
-
+
/**
* The data descriptor representing the library element for the library. This data is only
* available for Dart files that are the defining compilation unit of a library.
*/
static DataDescriptor<LibraryElement> ELEMENT = new DataDescriptor<LibraryElement>("DartEntry.ELEMENT");
-
+
/**
* The data descriptor representing the list of referenced libraries. This data is only available
* for Dart files that are the defining compilation unit of a library.
*/
static DataDescriptor<List<Source>> REFERENCED_LIBRARIES = new DataDescriptor<List<Source>>("DartEntry.REFERENCED_LIBRARIES");
-
+
/**
* The data descriptor representing the list of included parts. This data is only available for
* Dart files that are the defining compilation unit of a library.
*/
static DataDescriptor<List<Source>> INCLUDED_PARTS = new DataDescriptor<List<Source>>("DartEntry.INCLUDED_PARTS");
-
+
/**
* The data descriptor representing the client flag. This data is only available for Dart files
* that are the defining compilation unit of a library.
*/
static DataDescriptor<bool> IS_CLIENT = new DataDescriptor<bool>("DartEntry.IS_CLIENT");
-
+
/**
* The data descriptor representing the launchable flag. This data is only available for Dart
* files that are the defining compilation unit of a library.
*/
static DataDescriptor<bool> IS_LAUNCHABLE = new DataDescriptor<bool>("DartEntry.IS_LAUNCHABLE");
-
+
/**
* The data descriptor representing the errors resulting from parsing the source.
*/
static DataDescriptor<List<AnalysisError>> PARSE_ERRORS = new DataDescriptor<List<AnalysisError>>("DartEntry.PARSE_ERRORS");
-
+
/**
* The data descriptor representing the parsed AST structure.
*/
static DataDescriptor<CompilationUnit> PARSED_UNIT = new DataDescriptor<CompilationUnit>("DartEntry.PARSED_UNIT");
-
+
/**
* The data descriptor representing the public namespace of the library. This data is only
* available for Dart files that are the defining compilation unit of a library.
*/
static DataDescriptor<Namespace> PUBLIC_NAMESPACE = new DataDescriptor<Namespace>("DartEntry.PUBLIC_NAMESPACE");
-
+
/**
* The data descriptor representing the errors resulting from resolving the source.
*/
static DataDescriptor<List<AnalysisError>> RESOLUTION_ERRORS = new DataDescriptor<List<AnalysisError>>("DartEntry.RESOLUTION_ERRORS");
-
+
/**
* The data descriptor representing the resolved AST structure.
*/
static DataDescriptor<CompilationUnit> RESOLVED_UNIT = new DataDescriptor<CompilationUnit>("DartEntry.RESOLVED_UNIT");
-
+
/**
* The data descriptor representing the source kind.
*/
static DataDescriptor<SourceKind> SOURCE_KIND = new DataDescriptor<SourceKind>("DartEntry.SOURCE_KIND");
-
+
/**
* Return all of the errors associated with the compilation unit that are currently cached.
* @return all of the errors associated with the compilation unit
*/
List<AnalysisError> get allErrors;
-
+
/**
* Return a valid parsed compilation unit, either an unresolved AST structure or the result of
* resolving the AST structure in the context of some library, or {@code null} if there is no
@@ -792,14 +781,14 @@ abstract class DartEntry implements SourceEntry {
* @return a valid parsed compilation unit
*/
CompilationUnit get anyParsedCompilationUnit;
-
+
/**
* Return the result of resolving the compilation unit as part of any library, or {@code null} if
* there is no cached resolved compilation unit.
* @return any resolved compilation unit
*/
CompilationUnit get anyResolvedCompilationUnit;
-
+
/**
* Return the state of the data represented by the given descriptor in the context of the given
* library.
@@ -809,7 +798,7 @@ abstract class DartEntry implements SourceEntry {
* @return the value of the data represented by the given descriptor and library
*/
CacheState getState2(DataDescriptor<Object> descriptor, Source librarySource);
-
+
/**
* Return the value of the data represented by the given descriptor in the context of the given
* library, or {@code null} if the data represented by the descriptor is not in the cache.
@@ -821,114 +810,113 @@ abstract class DartEntry implements SourceEntry {
Object getValue2(DataDescriptor descriptor, Source librarySource);
DartEntryImpl get writableCopy;
}
-
/**
* Instances of the class {@code DartEntryImpl} implement a {@link DartEntry}.
* @coverage dart.engine
*/
class DartEntryImpl extends SourceEntryImpl implements DartEntry {
-
+
/**
* The state of the cached source kind.
*/
CacheState _sourceKindState = CacheState.INVALID;
-
+
/**
* The kind of this source.
*/
SourceKind _sourceKind = SourceKind.UNKNOWN;
-
+
/**
* The state of the cached parsed compilation unit.
*/
CacheState _parsedUnitState = CacheState.INVALID;
-
+
/**
* The parsed compilation unit, or {@code null} if the parsed compilation unit is not currently
* cached.
*/
CompilationUnit _parsedUnit;
-
+
/**
* The state of the cached parse errors.
*/
CacheState _parseErrorsState = CacheState.INVALID;
-
+
/**
* The errors produced while scanning and parsing the compilation unit, or {@code null} if the
* errors are not currently cached.
*/
List<AnalysisError> _parseErrors = AnalysisError.NO_ERRORS;
-
+
/**
* The state of the cached list of included parts.
*/
CacheState _includedPartsState = CacheState.INVALID;
-
+
/**
* The list of parts included in the library, or an empty array if the list is not currently
* cached. The list will be empty if the Dart file is a part rather than a library.
*/
List<Source> _includedParts = Source.EMPTY_ARRAY;
-
+
/**
* The state of the cached list of referenced libraries.
*/
CacheState _referencedLibrariesState = CacheState.INVALID;
-
+
/**
* The list of libraries referenced (imported or exported) by the library, or an empty array if
* the list is not currently cached. The list will be empty if the Dart file is a part rather than
* a library.
*/
List<Source> _referencedLibraries = Source.EMPTY_ARRAY;
-
+
/**
* The information known as a result of resolving this compilation unit as part of the library
* that contains this unit. This field will never be {@code null}.
*/
DartEntryImpl_ResolutionState _resolutionState = new DartEntryImpl_ResolutionState();
-
+
/**
* The state of the cached library element.
*/
CacheState _elementState = CacheState.INVALID;
-
+
/**
* The element representing the library, or {@code null} if the element is not currently cached.
*/
LibraryElement _element;
-
+
/**
* The state of the cached public namespace.
*/
CacheState _publicNamespaceState = CacheState.INVALID;
-
+
/**
* The public namespace of the library, or {@code null} if the namespace is not currently cached.
*/
Namespace _publicNamespace;
-
+
/**
* The state of the cached client/ server flag.
*/
CacheState _clientServerState = CacheState.INVALID;
-
+
/**
* The state of the cached launchable flag.
*/
CacheState _launchableState = CacheState.INVALID;
-
+
/**
* An integer holding bit masks such as {@link #LAUNCHABLE} and {@link #CLIENT_CODE}.
*/
int _bitmask = 0;
-
+
/**
* Mask indicating that this library is launchable: that the file has a main method.
*/
static int _LAUNCHABLE = 1 << 1;
-
+
/**
* Mask indicating that the library is client code: that the library depends on the html library.
* If the library is not "client code", then it is referenced as "server code".
@@ -1060,7 +1048,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
copy.copyFrom(this);
return copy;
}
-
+
/**
* Invalidate all of the information associated with the compilation unit.
*/
@@ -1074,7 +1062,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
_parsedUnitState = CacheState.INVALID;
invalidateAllResolutionInformation();
}
-
+
/**
* Invalidate all of the resolution information associated with the compilation unit.
*/
@@ -1092,7 +1080,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
_publicNamespaceState = CacheState.INVALID;
_resolutionState.invalidateAllResolutionInformation();
}
-
+
/**
* Record that an error occurred while attempting to scan or parse the entry represented by this
* entry. This will set the state of all information, including any resolution-based information,
@@ -1108,7 +1096,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
_parsedUnitState = CacheState.ERROR;
recordResolutionError();
}
-
+
/**
* Record that the parse-related information for the associated source is about to be computed by
* the current thread.
@@ -1127,7 +1115,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
_parsedUnitState = CacheState.IN_PROCESS;
}
}
-
+
/**
* Record that an error occurred while attempting to scan or parse the entry represented by this
* entry. This will set the state of all resolution-based information as being in error, but will
@@ -1147,7 +1135,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
_publicNamespaceState = CacheState.ERROR;
_resolutionState.recordResolutionError();
}
-
+
/**
* Remove any resolution information associated with this compilation unit being part of the given
* library, presumably because it is no longer part of the library.
@@ -1176,7 +1164,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
}
}
}
-
+
/**
* Set the results of parsing the compilation unit at the given time to the given values.
* @param modificationStamp the earliest time at which the source was last modified before the
@@ -1228,7 +1216,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
super.setState(descriptor, state);
}
}
-
+
/**
* Set the state of the data represented by the given descriptor in the context of the given
* library to the given state.
@@ -1289,7 +1277,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
super.setValue(descriptor, value);
}
}
-
+
/**
* Set the value of the data represented by the given descriptor in the context of the given
* library to the given value, and set the state of that data to {@link CacheState#VALID}.
@@ -1330,7 +1318,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
_launchableState = other._launchableState;
_bitmask = other._bitmask;
}
-
+
/**
* Return a resolution state for the specified library, creating one as necessary.
* @param librarySource the library source (not {@code null})
@@ -1353,7 +1341,7 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
}
return state;
}
-
+
/**
* Given that one of the flags is being transitioned to the given state, return the value of the
* flags that should be kept in the cache.
@@ -1371,47 +1359,46 @@ class DartEntryImpl extends SourceEntryImpl implements DartEntry {
return currentValue &= ~bitMask;
}
}
-
/**
* Instances of the class {@code ResolutionState} represent the information produced by resolving
* a compilation unit as part of a specific library.
*/
class DartEntryImpl_ResolutionState {
-
+
/**
* The next resolution state or {@code null} if none.
*/
DartEntryImpl_ResolutionState _nextState;
-
+
/**
* The source for the defining compilation unit of the library that contains this unit. If this
* unit is the defining compilation unit for it's library, then this will be the source for this
* unit.
*/
Source _librarySource;
-
+
/**
* The state of the cached resolved compilation unit.
*/
CacheState _resolvedUnitState = CacheState.INVALID;
-
+
/**
* The resolved compilation unit, or {@code null} if the resolved compilation unit is not
* currently cached.
*/
CompilationUnit _resolvedUnit;
-
+
/**
* The state of the cached resolution errors.
*/
CacheState _resolutionErrorsState = CacheState.INVALID;
-
+
/**
* The errors produced while resolving the compilation unit, or {@code null} if the errors are
* not currently cached.
*/
List<AnalysisError> _resolutionErrors = AnalysisError.NO_ERRORS;
-
+
/**
* Set this state to be exactly like the given state, recursively copying the next state as
* necessary.
@@ -1428,7 +1415,7 @@ class DartEntryImpl_ResolutionState {
_nextState.copyFrom(other._nextState);
}
}
-
+
/**
* Invalidate all of the resolution information associated with the compilation unit.
*/
@@ -1440,7 +1427,7 @@ class DartEntryImpl_ResolutionState {
_resolutionErrorsState = CacheState.INVALID;
_resolutionErrors = AnalysisError.NO_ERRORS;
}
-
+
/**
* Record that an error occurred while attempting to scan or parse the entry represented by this
* entry. This will set the state of all resolution-based information as being in error, but
@@ -1455,18 +1442,17 @@ class DartEntryImpl_ResolutionState {
_resolutionErrors = AnalysisError.NO_ERRORS;
}
}
-
/**
* Instances of the class {@code DataDescriptor} are immutable constants representing data that can
* be stored in the cache.
*/
class DataDescriptor<E> {
-
+
/**
* The name of the descriptor, used for debugging purposes.
*/
String _name;
-
+
/**
* Initialize a newly created descriptor to have the given name.
* @param name the name of the descriptor
@@ -1476,39 +1462,38 @@ class DataDescriptor<E> {
}
String toString() => _name;
}
-
/**
* The interface {@code HtmlEntry} defines the behavior of objects that maintain the information
* cached by an analysis context about an individual HTML file.
* @coverage dart.engine
*/
abstract class HtmlEntry implements SourceEntry {
-
+
/**
* The data descriptor representing the HTML element.
*/
static DataDescriptor<HtmlElement> ELEMENT = new DataDescriptor<HtmlElement>("HtmlEntry.ELEMENT");
-
+
/**
* The data descriptor representing the parsed AST structure.
*/
static DataDescriptor<HtmlUnit> PARSED_UNIT = new DataDescriptor<HtmlUnit>("HtmlEntry.PARSED_UNIT");
-
+
/**
* The data descriptor representing the list of referenced libraries.
*/
static DataDescriptor<List<Source>> REFERENCED_LIBRARIES = new DataDescriptor<List<Source>>("HtmlEntry.REFERENCED_LIBRARIES");
-
+
/**
* The data descriptor representing the errors resulting from resolving the source.
*/
static DataDescriptor<List<AnalysisError>> RESOLUTION_ERRORS = new DataDescriptor<List<AnalysisError>>("HtmlEntry.RESOLUTION_ERRORS");
-
+
/**
* The data descriptor representing the resolved AST structure.
*/
static DataDescriptor<HtmlUnit> RESOLVED_UNIT = new DataDescriptor<HtmlUnit>("HtmlEntry.RESOLVED_UNIT");
-
+
/**
* Return all of the errors associated with the compilation unit that are currently cached.
* @return all of the errors associated with the compilation unit
@@ -1516,60 +1501,59 @@ abstract class HtmlEntry implements SourceEntry {
List<AnalysisError> get allErrors;
HtmlEntryImpl get writableCopy;
}
-
/**
* Instances of the class {@code HtmlEntryImpl} implement an {@link HtmlEntry}.
* @coverage dart.engine
*/
class HtmlEntryImpl extends SourceEntryImpl implements HtmlEntry {
-
+
/**
* The state of the cached parsed (but not resolved) HTML unit.
*/
CacheState _parsedUnitState = CacheState.INVALID;
-
+
/**
* The parsed HTML unit, or {@code null} if the parsed HTML unit is not currently cached.
*/
HtmlUnit _parsedUnit;
-
+
/**
* The state of the cached resolution errors.
*/
CacheState _resolutionErrorsState = CacheState.INVALID;
-
+
/**
* The errors produced while resolving the compilation unit, or {@code null} if the errors are not
* currently cached.
*/
List<AnalysisError> _resolutionErrors = AnalysisError.NO_ERRORS;
-
+
/**
* The state of the cached parsed and resolved HTML unit.
*/
CacheState _resolvedUnitState = CacheState.INVALID;
-
+
/**
* The resolved HTML unit, or {@code null} if the resolved HTML unit is not currently cached.
*/
HtmlUnit _resolvedUnit;
-
+
/**
* The state of the cached list of referenced libraries.
*/
CacheState _referencedLibrariesState = CacheState.INVALID;
-
+
/**
* The list of libraries referenced in the HTML, or {@code null} if the list is not currently
* cached. Note that this list does not include libraries defined directly within the HTML file.
*/
List<Source> _referencedLibraries = Source.EMPTY_ARRAY;
-
+
/**
* The state of the cached HTML element.
*/
CacheState _elementState = CacheState.INVALID;
-
+
/**
* The element representing the HTML file, or {@code null} if the element is not currently cached.
*/
@@ -1673,7 +1657,6 @@ class HtmlEntryImpl extends SourceEntryImpl implements HtmlEntry {
_element = other._element;
}
}
-
/**
* The interface {@code SourceEntry} defines the behavior of objects that maintain the information
* cached by an analysis context about an individual source, no matter what kind of source it is.
@@ -1683,32 +1666,32 @@ class HtmlEntryImpl extends SourceEntryImpl implements HtmlEntry {
* @coverage dart.engine
*/
abstract class SourceEntry {
-
+
/**
* The data descriptor representing the line information.
*/
static DataDescriptor<LineInfo> LINE_INFO = new DataDescriptor<LineInfo>("SourceEntry.LINE_INFO");
-
+
/**
* Return the kind of the source, or {@code null} if the kind is not currently cached.
* @return the kind of the source
*/
SourceKind get kind;
-
+
/**
* Return the most recent time at which the state of the source matched the state represented by
* this entry.
* @return the modification time of this entry
*/
int get modificationTime;
-
+
/**
* Return the state of the data represented by the given descriptor.
* @param descriptor the descriptor representing the data whose state is to be returned
* @return the state of the data represented by the given descriptor
*/
CacheState getState(DataDescriptor<Object> descriptor);
-
+
/**
* Return the value of the data represented by the given descriptor, or {@code null} if the data
* represented by the descriptor is not in the cache.
@@ -1716,7 +1699,7 @@ abstract class SourceEntry {
* @return the value of the data represented by the given descriptor
*/
Object getValue(DataDescriptor descriptor);
-
+
/**
* Return a new entry that is initialized to the same state as this entry but that can be
* modified.
@@ -1724,24 +1707,23 @@ abstract class SourceEntry {
*/
SourceEntryImpl get writableCopy;
}
-
/**
* Instances of the abstract class {@code SourceEntryImpl} implement the behavior common to all{@link SourceEntry source entries}.
* @coverage dart.engine
*/
abstract class SourceEntryImpl implements SourceEntry {
-
+
/**
* The most recent time at which the state of the source matched the state represented by this
* entry.
*/
int _modificationTime = 0;
-
+
/**
* The state of the cached line information.
*/
CacheState _lineInfoState = CacheState.INVALID;
-
+
/**
* The line information computed for the source, or {@code null} if the line information is not
* currently cached.
@@ -1762,7 +1744,7 @@ abstract class SourceEntryImpl implements SourceEntry {
throw new IllegalArgumentException("Invalid descriptor: ${descriptor}");
}
}
-
+
/**
* Set the most recent time at which the state of the source matched the state represented by this
* entry to the given time.
@@ -1771,7 +1753,7 @@ abstract class SourceEntryImpl implements SourceEntry {
void set modificationTime(int time) {
_modificationTime = time;
}
-
+
/**
* Set the state of the data represented by the given descriptor to the given state.
* @param descriptor the descriptor representing the data whose state is to be set
@@ -1785,7 +1767,7 @@ abstract class SourceEntryImpl implements SourceEntry {
throw new IllegalArgumentException("Invalid descriptor: ${descriptor}");
}
}
-
+
/**
* Set the value of the data represented by the given descriptor to the given value.
* @param descriptor the descriptor representing the data whose value is to be set
@@ -1799,7 +1781,7 @@ abstract class SourceEntryImpl implements SourceEntry {
throw new IllegalArgumentException("Invalid descriptor: ${descriptor}");
}
}
-
+
/**
* Copy the information from the given cache entry.
* @param entry the cache entry from which information will be copied
@@ -1809,7 +1791,7 @@ abstract class SourceEntryImpl implements SourceEntry {
_lineInfoState = entry._lineInfoState;
_lineInfo = entry._lineInfo;
}
-
+
/**
* Given that some data is being transitioned to the given state, return the value that should be
* kept in the cache.
@@ -1827,62 +1809,72 @@ abstract class SourceEntryImpl implements SourceEntry {
return defaultValue;
}
}
-
/**
* Instances of the class {@code AnalysisContextImpl} implement an {@link AnalysisContext analysis
* context}.
* @coverage dart.engine
*/
class AnalysisContextImpl implements InternalAnalysisContext {
-
+
/**
* The set of analysis options controlling the behavior of this context.
*/
AnalysisOptions _options = new AnalysisOptionsImpl();
-
+
/**
* The source factory used to create the sources that can be analyzed in this context.
*/
SourceFactory _sourceFactory;
-
+
/**
* A table mapping the sources known to the context to the information known about the source.
*/
Map<Source, SourceEntry> _sourceMap = new Map<Source, SourceEntry>();
-
+
/**
* A table mapping sources to the change notices that are waiting to be returned related to that
* source.
*/
Map<Source, ChangeNoticeImpl> _pendingNotices = new Map<Source, ChangeNoticeImpl>();
-
+
/**
* A list containing the most recently accessed sources with the most recently used at the end of
* the list. When more sources are added than the maximum allowed then the least recently used
* source will be removed and will have it's cached AST structure flushed.
*/
List<Source> _recentlyUsed = new List<Source>();
-
+
/**
* The object used to synchronize access to all of the caches.
*/
Object _cacheLock = new Object();
-
+
/**
* The maximum number of sources for which data should be kept in the cache.
*/
static int _MAX_CACHE_SIZE = 64;
-
+
/**
* The name of the 'src' attribute in a HTML tag.
*/
static String _ATTRIBUTE_SRC = "src";
-
+
+ /**
+ * The name of the 'type' attribute in a HTML tag.
+ */
+ static String _ATTRIBUTE_TYPE = "type";
+
/**
* The name of the 'script' tag in an HTML file.
*/
static String _TAG_SCRIPT = "script";
-
+
+ /**
+ * The value of the 'type' attribute of a 'script' tag that indicates that the script is written
+ * in Dart.
+ */
+ static String _TYPE_DART = "application/dart";
+
/**
* The number of times that the flushing of information from the cache has been disabled without
* being re-enabled.
@@ -2036,9 +2028,6 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
}
LibraryElement computeLibraryElement(Source source) {
- if (!AnalysisEngine.isDartFileName(source.shortName)) {
- return null;
- }
{
DartEntry dartEntry = getDartEntry(source);
if (dartEntry == null) {
@@ -2511,7 +2500,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return librarySources;
}
-
+
/**
* Return a list of the sources that would be processed by {@link #performAnalysisTask()}. This
* method is intended to be used for testing purposes only.
@@ -2541,7 +2530,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return sources;
}
-
+
/**
* Record that the given source was just accessed for some unspecified purpose.
* <p>
@@ -2573,7 +2562,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
_recentlyUsed.add(source);
}
-
+
/**
* Add all of the sources contained in the given source container to the given list of sources.
* <p>
@@ -2588,7 +2577,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
}
}
-
+
/**
* Return {@code true} if the given array of sources contains the given source.
* @param sources the sources being searched
@@ -2603,7 +2592,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return false;
}
-
+
/**
* Return {@code true} if the given array of sources contains any of the given target sources.
* @param sources the sources being searched
@@ -2618,7 +2607,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return false;
}
-
+
/**
* Create a source information object suitable for the given source. Return the source information
* object that was created, or {@code null} if the source should not be tracked by this context.
@@ -2631,14 +2620,13 @@ class AnalysisContextImpl implements InternalAnalysisContext {
HtmlEntry htmlEntry = new HtmlEntryImpl();
_sourceMap[source] = htmlEntry;
return htmlEntry;
- } else if (AnalysisEngine.isDartFileName(name)) {
+ } else {
DartEntry dartEntry = new DartEntryImpl();
_sourceMap[source] = dartEntry;
return dartEntry;
}
- return null;
}
-
+
/**
* Disable flushing information from the cache until {@link #enableCacheRemoval()} has been
* called.
@@ -2646,7 +2634,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
void disableCacheRemoval() {
_cacheRemovalCount++;
}
-
+
/**
* Re-enable flushing information from the cache.
*/
@@ -2674,7 +2662,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
}
}
-
+
/**
* Search the compilation units that are part of the given library and return the element
* representing the compilation unit with the given source. Return {@code null} if there is no
@@ -2695,7 +2683,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return null;
}
-
+
/**
* Return the compilation unit information associated with the given source, or {@code null} if
* the source is not known to this context. This method should be used to access the compilation
@@ -2718,7 +2706,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return null;
}
-
+
/**
* Return the HTML unit information associated with the given source, or {@code null} if the
* source is not known to this context. This method should be used to access the HTML unit
@@ -2741,7 +2729,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return null;
}
-
+
/**
* Return the sources of libraries that are referenced in the specified HTML file.
* @param htmlSource the source of the HTML file being analyzed
@@ -2756,7 +2744,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return new List.from(libraries);
}
-
+
/**
* Return a change notice for the given source, creating one if one does not already exist.
* @param source the source for which changes are being reported
@@ -2770,7 +2758,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return notice;
}
-
+
/**
* Return the cache entry associated with the given source, or {@code null} if there is no entry
* associated with the source.
@@ -2782,7 +2770,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
return _sourceMap[source];
}
}
-
+
/**
* Return the source information associated with the given source, or {@code null} if the source
* is not known to this context. This method should be used to access the source information
@@ -2800,7 +2788,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return sourceEntry;
}
-
+
/**
* Return an array containing all of the sources known to this context that have the given kind.
* @param kind the kind of sources to be returned
@@ -2817,7 +2805,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return new List.from(sources);
}
-
+
/**
* Return {@code true} if the given compilation unit has a part-of directive but no library
* directive.
@@ -2835,7 +2823,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return hasPartOf;
}
-
+
/**
* Compute the kind of the given source. This method should only be invoked when the kind is not
* already known.
@@ -2913,7 +2901,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return result;
}
-
+
/**
* Invalidate all of the results computed by this context.
* <p>
@@ -2933,7 +2921,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
}
}
-
+
/**
* In response to a change to at least one of the compilation units in the given library,
* invalidate any results that are dependent on the result of resolving that library.
@@ -2957,7 +2945,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
}
}
-
+
/**
* Return {@code true} if this library is, or depends on, dart:html.
* @param library the library being tested
@@ -2985,7 +2973,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return false;
}
-
+
/**
* Perform a single analysis task.
* <p>
@@ -3059,7 +3047,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return false;
}
-
+
/**
* Given a cache entry and a library element, record the library element and other information
* gleaned from the element in the cache entry.
@@ -3079,7 +3067,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
dartCopy.setValue(DartEntry.INCLUDED_PARTS, new List.from(unitSources));
}
-
+
/**
* Record the result of using the given resolver to resolve one or more libraries.
* @param resolver the resolver that has the needed results
@@ -3138,7 +3126,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return scanner.result;
}
-
+
/**
* Create an entry for the newly added source. Return {@code true} if the new source is a Dart
* file.
@@ -3154,7 +3142,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
return sourceEntry is DartEntry;
}
-
+
/**
* <b>Note:</b> This method must only be invoked while we are synchronized on {@link #cacheLock}.
* @param source the source that has been changed
@@ -3183,7 +3171,7 @@ class AnalysisContextImpl implements InternalAnalysisContext {
}
}
}
-
+
/**
* <b>Note:</b> This method must only be invoked while we are synchronized on {@link #cacheLock}.
* @param source the source that has been deleted
@@ -3205,22 +3193,21 @@ class AnalysisContextImpl implements InternalAnalysisContext {
_sourceMap.remove(source);
}
}
-
/**
* Instances of the class {@code ScanResult} represent the results of scanning a source.
*/
class AnalysisContextImpl_ScanResult {
-
+
/**
* The time at which the contents of the source were last set.
*/
int _modificationTime = 0;
-
+
/**
* The first token in the token stream.
*/
Token _token;
-
+
/**
* The line start information that was produced.
*/
@@ -3243,22 +3230,29 @@ class RecursiveXmlVisitor_7 extends RecursiveXmlVisitor<Object> {
RecursiveXmlVisitor_7(this.AnalysisContextImpl_this, this.htmlSource, this.libraries) : super();
Object visitXmlTagNode(XmlTagNode node) {
if (javaStringEqualsIgnoreCase(node.tag.lexeme, AnalysisContextImpl._TAG_SCRIPT)) {
+ bool isDartScript = false;
+ XmlAttributeNode scriptAttribute = null;
for (XmlAttributeNode attribute in node.attributes) {
if (javaStringEqualsIgnoreCase(attribute.name.lexeme, AnalysisContextImpl._ATTRIBUTE_SRC)) {
- try {
- Uri uri = new Uri(path: attribute.text);
- String fileName = uri.path;
- if (AnalysisEngine.isDartFileName(fileName)) {
- Source librarySource = AnalysisContextImpl_this._sourceFactory.resolveUri(htmlSource, fileName);
- if (librarySource.exists()) {
- libraries.add(librarySource);
- }
- }
- } catch (exception) {
- AnalysisEngine.instance.logger.logError2("Invalid URL ('${attribute.text}') in script tag in '${htmlSource.fullName}'", exception);
+ scriptAttribute = attribute;
+ } else if (javaStringEqualsIgnoreCase(attribute.name.lexeme, AnalysisContextImpl._ATTRIBUTE_TYPE)) {
+ if (javaStringEqualsIgnoreCase(attribute.text, AnalysisContextImpl._TYPE_DART)) {
+ isDartScript = true;
}
}
}
+ if (isDartScript && scriptAttribute != null) {
+ try {
+ Uri uri = new Uri(path: scriptAttribute.text);
+ String fileName = uri.path;
+ Source librarySource = AnalysisContextImpl_this._sourceFactory.resolveUri(htmlSource, fileName);
+ if (librarySource.exists()) {
+ libraries.add(librarySource);
+ }
+ } catch (exception) {
+ AnalysisEngine.instance.logger.logError2("Invalid URL ('${scriptAttribute.text}') in script tag in '${htmlSource.fullName}'", exception);
+ }
+ }
}
return super.visitXmlTagNode(node);
}
@@ -3281,23 +3275,22 @@ class Source_ContentReceiver_8 implements Source_ContentReceiver {
result._lineStarts = scanner.lineStarts;
}
}
-
/**
* Instances of the class {@code AnalysisErrorInfoImpl} represent the analysis errors and line info
* associated with a source.
*/
class AnalysisErrorInfoImpl implements AnalysisErrorInfo {
-
+
/**
* The analysis errors associated with a source, or {@code null} if there are no errors.
*/
List<AnalysisError> _errors;
-
+
/**
* The line information associated with the errors, or {@code null} if there are no errors.
*/
LineInfo _lineInfo;
-
+
/**
* Initialize an newly created error info with the errors and line information
* @param errors the errors as a result of analysis
@@ -3307,13 +3300,13 @@ class AnalysisErrorInfoImpl implements AnalysisErrorInfo {
this._errors = errors;
this._lineInfo = lineInfo;
}
-
+
/**
* Return the errors of analysis, or {@code null} if there were no errors.
* @return the errors as a result of the analysis
*/
List<AnalysisError> get errors => _errors;
-
+
/**
* Return the line information associated with the errors, or {@code null} if there were no
* errors.
@@ -3321,26 +3314,25 @@ class AnalysisErrorInfoImpl implements AnalysisErrorInfo {
*/
LineInfo get lineInfo => _lineInfo;
}
-
/**
* Instances of the class {@code AnalysisOptions} represent a set of analysis options used to
* control the behavior of an analysis context.
*/
class AnalysisOptionsImpl implements AnalysisOptions {
-
+
/**
* A flag indicating whether analysis is to use strict mode. In strict mode, error reporting is
* based exclusively on the static type information.
*/
bool _strictMode = false;
-
+
/**
* Return {@code true} if analysis is to use strict mode. In strict mode, error reporting is based
* exclusively on the static type information.
* @return {@code true} if analysis is to use strict mode
*/
bool get strictMode => _strictMode;
-
+
/**
* Set whether analysis is to use strict mode to the given value. In strict mode, error reporting
* is based exclusively on the static type information.
@@ -3350,12 +3342,11 @@ class AnalysisOptionsImpl implements AnalysisOptions {
_strictMode = isStrict;
}
}
-
/**
* The enumeration {@code CacheState} defines the possible states of cached data.
*/
class CacheState implements Comparable<CacheState> {
-
+
/**
* The data is not in the cache and the last time an attempt was made to compute the data an
* exception occurred, making it pointless to attempt.
@@ -3366,7 +3357,7 @@ class CacheState implements Comparable<CacheState> {
* </ul>
*/
static final CacheState ERROR = new CacheState('ERROR', 0);
-
+
/**
* The data is not in the cache because it was flushed from the cache in order to control memory
* usage. If the data is recomputed, results do not need to be reported.
@@ -3378,7 +3369,7 @@ class CacheState implements Comparable<CacheState> {
* </ul>
*/
static final CacheState FLUSHED = new CacheState('FLUSHED', 1);
-
+
/**
* The data might or might not be in the cache but is in the process of being recomputed.
* <p>
@@ -3389,7 +3380,7 @@ class CacheState implements Comparable<CacheState> {
* </ul>
*/
static final CacheState IN_PROCESS = new CacheState('IN_PROCESS', 2);
-
+
/**
* The data is not in the cache and needs to be recomputed so that results can be reported.
* <p>
@@ -3399,7 +3390,7 @@ class CacheState implements Comparable<CacheState> {
* </ul>
*/
static final CacheState INVALID = new CacheState('INVALID', 3);
-
+
/**
* The data is in the cache and up-to-date.
* <p>
@@ -3411,10 +3402,10 @@ class CacheState implements Comparable<CacheState> {
*/
static final CacheState VALID = new CacheState('VALID', 4);
static final List<CacheState> values = [ERROR, FLUSHED, IN_PROCESS, INVALID, VALID];
-
+
/// The name of this enum constant, as declared in the enum declaration.
final String name;
-
+
/// The position in the enum declaration.
final int ordinal;
CacheState(this.name, this.ordinal) {
@@ -3422,41 +3413,40 @@ class CacheState implements Comparable<CacheState> {
int compareTo(CacheState other) => ordinal - other.ordinal;
String toString() => name;
}
-
/**
* Instances of the class {@code ChangeNoticeImpl} represent a change to the analysis results
* associated with a given source.
* @coverage dart.engine
*/
class ChangeNoticeImpl implements ChangeNotice {
-
+
/**
* The source for which the result is being reported.
*/
Source _source;
-
+
/**
* The fully resolved AST that changed as a result of the analysis, or {@code null} if the AST was
* not changed.
*/
CompilationUnit _compilationUnit;
-
+
/**
* The errors that changed as a result of the analysis, or {@code null} if errors were not
* changed.
*/
List<AnalysisError> _errors;
-
+
/**
* The line information associated with the source, or {@code null} if errors were not changed.
*/
LineInfo _lineInfo;
-
+
/**
* An empty array of change notices.
*/
static List<ChangeNoticeImpl> EMPTY_ARRAY = new List<ChangeNoticeImpl>(0);
-
+
/**
* Initialize a newly created notice associated with the given source.
* @param source the source for which the change is being reported
@@ -3464,34 +3454,34 @@ class ChangeNoticeImpl implements ChangeNotice {
ChangeNoticeImpl(Source source) {
this._source = source;
}
-
+
/**
* Return the fully resolved AST that changed as a result of the analysis, or {@code null} if the
* AST was not changed.
* @return the fully resolved AST that changed as a result of the analysis
*/
CompilationUnit get compilationUnit => _compilationUnit;
-
+
/**
* Return the errors that changed as a result of the analysis, or {@code null} if errors were not
* changed.
* @return the errors that changed as a result of the analysis
*/
List<AnalysisError> get errors => _errors;
-
+
/**
* Return the line information associated with the source, or {@code null} if errors were not
* changed.
* @return the line information associated with the source
*/
LineInfo get lineInfo => _lineInfo;
-
+
/**
* Return the source for which the result is being reported.
* @return the source for which the result is being reported
*/
Source get source => _source;
-
+
/**
* Set the fully resolved AST that changed as a result of the analysis to the given AST.
* @param compilationUnit the fully resolved AST that changed as a result of the analysis
@@ -3499,7 +3489,7 @@ class ChangeNoticeImpl implements ChangeNotice {
void set compilationUnit(CompilationUnit compilationUnit2) {
this._compilationUnit = compilationUnit2;
}
-
+
/**
* Set the errors that changed as a result of the analysis to the given errors and set the line
* information to the given line information.
@@ -3511,14 +3501,13 @@ class ChangeNoticeImpl implements ChangeNotice {
this._lineInfo = lineInfo2;
}
}
-
/**
* Instances of the class {@code DelegatingAnalysisContextImpl} extend {@link AnalysisContextImplanalysis context} to delegate sources to the appropriate analysis context. For instance, if the
* source is in a system library then the analysis context from the {@link DartSdk} is used.
* @coverage dart.engine
*/
class DelegatingAnalysisContextImpl extends AnalysisContextImpl {
-
+
/**
* This references the {@link InternalAnalysisContext} held onto by the {@link DartSdk} which is
* used (instead of this {@link AnalysisContext}) for SDK sources. This field is set when
@@ -3742,14 +3731,13 @@ class DelegatingAnalysisContextImpl extends AnalysisContextImpl {
}
}
}
-
/**
* Instances of the class {@code InstrumentedAnalysisContextImpl} implement an{@link AnalysisContext analysis context} by recording instrumentation data and delegating to
* another analysis context to do the non-instrumentation work.
* @coverage dart.engine
*/
class InstrumentedAnalysisContextImpl implements InternalAnalysisContext {
-
+
/**
* Record an exception that was thrown during analysis.
* @param instrumentation the instrumentation builder being used to record the exception
@@ -3758,36 +3746,36 @@ class InstrumentedAnalysisContextImpl implements InternalAnalysisContext {
static void recordAnalysisException(InstrumentationBuilder instrumentation, AnalysisException exception) {
instrumentation.record(exception);
}
-
+
/**
* The unique identifier used to identify this analysis context in the instrumentation data.
*/
String _contextId = UUID.randomUUID().toString();
-
+
/**
* The analysis context to which all of the non-instrumentation work is delegated.
*/
InternalAnalysisContext _basis;
-
+
/**
* Create a new {@link InstrumentedAnalysisContextImpl} which wraps a new{@link AnalysisContextImpl} as the basis context.
*/
InstrumentedAnalysisContextImpl() {
- _jtd_constructor_182_impl();
+ _jtd_constructor_183_impl();
}
- _jtd_constructor_182_impl() {
- _jtd_constructor_183_impl(new AnalysisContextImpl());
+ _jtd_constructor_183_impl() {
+ _jtd_constructor_184_impl(new AnalysisContextImpl());
}
-
+
/**
* Create a new {@link InstrumentedAnalysisContextImpl} with a specified basis context, aka the
* context to wrap and instrument.
* @param context some {@link InstrumentedAnalysisContext} to wrap and instrument
*/
InstrumentedAnalysisContextImpl.con1(InternalAnalysisContext context) {
- _jtd_constructor_183_impl(context);
+ _jtd_constructor_184_impl(context);
}
- _jtd_constructor_183_impl(InternalAnalysisContext context) {
+ _jtd_constructor_184_impl(InternalAnalysisContext context) {
_basis = context;
}
void addSourceInfo(Source source, SourceEntry info) {
@@ -3889,7 +3877,7 @@ class InstrumentedAnalysisContextImpl implements InternalAnalysisContext {
instrumentation.log();
}
}
-
+
/**
* @return the underlying {@link AnalysisContext}.
*/
@@ -4215,20 +4203,19 @@ class InstrumentedAnalysisContextImpl implements InternalAnalysisContext {
}
}
}
-
/**
* The interface {@code InternalAnalysisContext} defines additional behavior for an analysis context
* that is required by internal users of the context.
*/
abstract class InternalAnalysisContext implements AnalysisContext {
-
+
/**
* Add the given source with the given information to this context.
* @param source the source to be added
* @param info the information about the source
*/
void addSourceInfo(Source source, SourceEntry info);
-
+
/**
* Return an AST structure corresponding to the given source, but ensure that the structure has
* not already been resolved and will not be resolved by any other threads or in any other
@@ -4238,7 +4225,7 @@ abstract class InternalAnalysisContext implements AnalysisContext {
* @throws AnalysisException if the analysis could not be performed
*/
CompilationUnit computeResolvableCompilationUnit(Source source);
-
+
/**
* Initialize the specified context by removing the specified sources from the receiver and adding
* them to the specified context.
@@ -4248,7 +4235,7 @@ abstract class InternalAnalysisContext implements AnalysisContext {
* @return the analysis context that was initialized
*/
InternalAnalysisContext extractContextInto(SourceContainer container, InternalAnalysisContext newContext);
-
+
/**
* Return a namespace containing mappings for all of the public names defined by the given
* library.
@@ -4256,7 +4243,7 @@ abstract class InternalAnalysisContext implements AnalysisContext {
* @return the public namespace of the given library
*/
Namespace getPublicNamespace(LibraryElement library);
-
+
/**
* Return a namespace containing mappings for all of the public names defined by the library
* defined by the given source.
@@ -4265,7 +4252,7 @@ abstract class InternalAnalysisContext implements AnalysisContext {
* @throws AnalysisException if the public namespace could not be computed
*/
Namespace getPublicNamespace2(Source source);
-
+
/**
* Given a table mapping the source for the libraries represented by the corresponding elements to
* the elements representing the libraries, record those mappings.
@@ -4274,7 +4261,6 @@ abstract class InternalAnalysisContext implements AnalysisContext {
*/
void recordLibraryElements(Map<Source, LibraryElement> elementMap);
}
-
/**
* Instances of the class {@code RecordingErrorListener} implement an error listener that will
* record the errors that are reported to it in a way that is appropriate for caching those errors
@@ -4282,12 +4268,12 @@ abstract class InternalAnalysisContext implements AnalysisContext {
* @coverage dart.engine
*/
class RecordingErrorListener implements AnalysisErrorListener {
-
+
/**
* A HashMap of lists containing the errors that were collected, keyed by each {@link Source}.
*/
Map<Source, List<AnalysisError>> _errors = new Map<Source, List<AnalysisError>>();
-
+
/**
* Add all of the errors recorded by the given listener to this listener.
* @param listener the listener that has recorded the errors to be added
@@ -4297,7 +4283,7 @@ class RecordingErrorListener implements AnalysisErrorListener {
onError(error);
}
}
-
+
/**
* Answer the errors collected by the listener.
* @return an array of errors (not {@code null}, contains no {@code null}s)
@@ -4313,7 +4299,7 @@ class RecordingErrorListener implements AnalysisErrorListener {
}
return new List.from(resultList);
}
-
+
/**
* Answer the errors collected by the listener for some passed {@link Source}.
* @param source some {@link Source} for which the caller wants the set of {@link AnalysisError}s
@@ -4338,7 +4324,6 @@ class RecordingErrorListener implements AnalysisErrorListener {
errorsForSource.add(event);
}
}
-
/**
* Instances of the class {@code ResolutionEraser} remove any resolution information from an AST
* structure when used to visit that structure.
@@ -4410,7 +4395,6 @@ class ResolutionEraser extends GeneralizingASTVisitor<Object> {
return super.visitSuperConstructorInvocation(node);
}
}
-
/**
* The interface {@code Logger} defines the behavior of objects that can be used to receive
* information about errors within the analysis engine. Implementations usually write this
@@ -4420,33 +4404,33 @@ class ResolutionEraser extends GeneralizingASTVisitor<Object> {
*/
abstract class Logger {
static Logger NULL = new Logger_NullLogger();
-
+
/**
* Log the given message as an error.
* @param message an explanation of why the error occurred or what it means
*/
void logError(String message);
-
+
/**
* Log the given exception as one representing an error.
* @param message an explanation of why the error occurred or what it means
* @param exception the exception being logged
*/
void logError2(String message, Exception exception);
-
+
/**
* Log the given exception as one representing an error.
* @param exception the exception being logged
*/
void logError3(Exception exception);
-
+
/**
* Log the given informational message.
* @param message an explanation of why the error occurred or what it means
* @param exception the exception being logged
*/
void logInformation(String message);
-
+
/**
* Log the given exception as one representing an informational message.
* @param message an explanation of why the error occurred or what it means
@@ -4454,7 +4438,6 @@ abstract class Logger {
*/
void logInformation2(String message, Exception exception);
}
-
/**
* Implementation of {@link Logger} that does nothing.
*/
« no previous file with comments | « pkg/analyzer_experimental/lib/src/generated/element.dart ('k') | pkg/analyzer_experimental/lib/src/generated/error.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698