Community
Participate
Working Groups
IrritantSet[] suppressWarningIrritants; // irritant for suppressed warnings
Annotation[] suppressWarningAnnotations;
long[] suppressWarningScopePositions; // (start << 32) + end
int suppressWarningsCount;
public ASTNode nodeBeingResolved;
public CompilationUnitDeclaration(ProblemReporter problemReporter, CompilationResult compilationResult, int sourceLength) {
this.problemReporter = problemReporter;
this.compilationResult = compilationResult;
//by definition of a compilation unit....
lambda.returnsExpression(null, methodType);
if (methodType != null) scope.problemReporter().shouldReturn(methodType, this);
return;
}
CompilationUnitDeclaration referenceContext = scope.compilationUnitScope().referenceContext;
ASTNode oldResolvNode = referenceContext.nodeBeingResolved;
referenceContext.nodeBeingResolved = this.expression;
expressionType = this.expression.resolveType(scope);
referenceContext.nodeBeingResolved = oldResolvNode;
if (lambda != null)
lambda.returnsExpression(this.expression, expressionType);
if (expressionType == null) return;
if (expressionType == TypeBinding.VOID) {
public void isClassPathCorrect(char[][] wellKnownTypeName, CompilationUnitDeclaration compUnitDecl, Object location) {
this.referenceContext = compUnitDecl;
String[] arguments = new String[] {CharOperation.toString(wellKnownTypeName)};
int start = 0, end = 0;
if (location != null) {
if (location instanceof InvocationSite) {
ReferenceBinding refBinding;
if (compUnitDecl != null && compUnitDecl.nodeBeingResolved != null &&
location instanceof FieldDeclaration && ((refBinding = ((FieldDeclaration)location).binding.declaringClass).modifiers & ClassFileConstants.AccEnum) != 0 &&
!(compUnitDecl.getFileName().equals(refBinding instanceof SourceTypeBinding ? ((SourceTypeBinding)refBinding).getFileName(): null))) {
start = compUnitDecl.nodeBeingResolved.sourceStart;
end = compUnitDecl.nodeBeingResolved.sourceEnd;
} else if (location instanceof InvocationSite) {
InvocationSite site = (InvocationSite) location;
start = site.sourceStart();
end = site.sourceEnd();
} else if (location instanceof ASTNode) {
ASTNode node = (ASTNode) location;