Lines 30-41
Link Here
|
30 |
boolean isIncrementalBuild; |
30 |
boolean isIncrementalBuild; |
31 |
ClasspathMultiDirectory[] sourceLocations; |
31 |
ClasspathMultiDirectory[] sourceLocations; |
32 |
ClasspathLocation[] binaryLocations; |
32 |
ClasspathLocation[] binaryLocations; |
33 |
|
33 |
BuildNotifier notifier; |
|
|
34 |
|
34 |
SimpleSet initialTypeNames; // assumed that each name is of the form "a/b/ClassName" |
35 |
SimpleSet initialTypeNames; // assumed that each name is of the form "a/b/ClassName" |
35 |
SimpleLookupTable additionalUnits; |
36 |
SimpleLookupTable additionalUnits; |
36 |
|
37 |
|
37 |
NameEnvironment(IWorkspaceRoot root, JavaProject javaProject, SimpleLookupTable binaryLocationsPerProject) throws CoreException { |
38 |
NameEnvironment(IWorkspaceRoot root, JavaProject javaProject, SimpleLookupTable binaryLocationsPerProject, BuildNotifier notifier) throws CoreException { |
38 |
this.isIncrementalBuild = false; |
39 |
this.isIncrementalBuild = false; |
|
|
40 |
this.notifier = notifier; |
39 |
computeClasspathLocations(root, javaProject, binaryLocationsPerProject); |
41 |
computeClasspathLocations(root, javaProject, binaryLocationsPerProject); |
40 |
setNames(null, null); |
42 |
setNames(null, null); |
41 |
} |
43 |
} |
Lines 259-264
Link Here
|
259 |
} |
261 |
} |
260 |
|
262 |
|
261 |
private NameEnvironmentAnswer findClass(String qualifiedTypeName, char[] typeName) { |
263 |
private NameEnvironmentAnswer findClass(String qualifiedTypeName, char[] typeName) { |
|
|
264 |
if (this.notifier != null) |
265 |
this.notifier.checkCancelWithinCompiler(); |
266 |
|
262 |
if (this.initialTypeNames != null && this.initialTypeNames.includes(qualifiedTypeName)) { |
267 |
if (this.initialTypeNames != null && this.initialTypeNames.includes(qualifiedTypeName)) { |
263 |
if (isIncrementalBuild) |
268 |
if (isIncrementalBuild) |
264 |
// catch the case that a type inside a source file has been renamed but other class files are looking for it |
269 |
// catch the case that a type inside a source file has been renamed but other class files are looking for it |