Package org.eclipse.jdt.internal.compiler.lookup

Examples of org.eclipse.jdt.internal.compiler.lookup.Scope$Substitutor


    VariableBinding binding,
    Reference finalAssignment) {

    // do not consider variables which are defined inside this loop
    if (binding instanceof LocalVariableBinding) {
      Scope scope = ((LocalVariableBinding) binding).declaringScope;
      while ((scope = scope.parent) != null) {
        if (scope == this.associatedScope)
          return false;
      }
    }
View Full Code Here


      messageSend.sourceStart,
      messageSend.sourceEnd);
  }
}
public void javadocHiddenReference(int sourceStart, int sourceEnd, Scope scope, int modifiers) {
  Scope currentScope = scope;
  while (currentScope.parent.kind != Scope.COMPILATION_UNIT_SCOPE ) {
    if (!javadocVisibility(this.options.reportInvalidJavadocTagsVisibility, currentScope.getDeclarationModifiers())) {
      return;
    }
    currentScope = currentScope.parent;
  }
  String[] arguments = new String[] { this.options.getVisibilityString(this.options.reportInvalidJavadocTagsVisibility), this.options.getVisibilityString(modifiers) };
View Full Code Here

        if (outerTrackerScope == scope) {
          // outerTracker is from same scope and already processed -> pick trackingVar now
          break;
        } else {
          // outer resource is from other (outer?) scope
          Scope currentScope = scope;
          while ((currentScope = currentScope.parent) instanceof BlockScope) {
            if (outerTrackerScope == currentScope) {
              // at end of block pass responsibility for inner resource to outer scope holding a wrapper
              varsOfScope.remove(trackingVar); // drop this one
              // pick a next candidate:
View Full Code Here

      messageSend.sourceStart,
      messageSend.sourceEnd);
  }
}
public void javadocHiddenReference(int sourceStart, int sourceEnd, Scope scope, int modifiers) {
  Scope currentScope = scope;
  while (currentScope.parent.kind != Scope.COMPILATION_UNIT_SCOPE ) {
    if (!javadocVisibility(this.options.reportInvalidJavadocTagsVisibility, currentScope.getDeclarationModifiers())) {
      return;
    }
    currentScope = currentScope.parent;
  }
  String[] arguments = new String[] { this.options.getVisibilityString(this.options.reportInvalidJavadocTagsVisibility), this.options.getVisibilityString(modifiers) };
View Full Code Here

  /* (non-Javadoc)
   * @see org.eclipse.jdt.core.dom.ITypeBinding#getFunctionalInterfaceMethod
   */
  @Override
  public IMethodBinding getFunctionalInterfaceMethod() {
    Scope scope = this.resolver.scope();
    if (this.binding == null || scope == null)
      return null;
    MethodBinding sam = this.binding.getSingleAbstractMethod(scope, true);
    if (sam == null || !sam.isValidBinding())
      return null;
View Full Code Here

  public boolean isAssignmentCompatible(ITypeBinding type) {
    try {
      if (this == type) return true; //$IDENTITY-COMPARISON$
      if (!(type instanceof TypeBinding)) return false;
      TypeBinding other = (TypeBinding) type;
      Scope scope = this.resolver.scope();
      if (scope == null) return false;
      return this.binding.isCompatibleWith(other.binding) || scope.isBoxingCompatibleWith(this.binding, other.binding);
    } catch (AbortCompilation e) {
      // don't surface internal exception to clients
      // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=143013
      return false;
    }
View Full Code Here

  /* (non-Javadoc)
   * @see ITypeBinding#isCastCompatible(ITypeBinding)
   */
  public boolean isCastCompatible(ITypeBinding type) {
    try {
      Scope scope = this.resolver.scope();
      if (scope == null) return false;
      if (!(type instanceof TypeBinding)) return false;
      org.eclipse.jdt.internal.compiler.lookup.TypeBinding expressionType = ((TypeBinding) type).binding;
      // simulate capture in case checked binding did not properly get extracted from a reference
      expressionType = expressionType.capture(scope, 0);
View Full Code Here

  public MethodScope getScope() {
    return this.scope;
  }
 
  private boolean enclosingScopesHaveErrors() {
    Scope skope = this.enclosingScope;
    while (skope != null) {
      ReferenceContext context = skope.referenceContext();
      if (context != null && context.hasErrors())
        return true;
      skope = skope.parent;
    }
    return false;
View Full Code Here

    return this.ignoreFurtherInvestigation;
  }

  public void tagAsHavingErrors() {
    this.ignoreFurtherInvestigation = true;
    Scope parent = this.enclosingScope.parent;
    while (parent != null) {
      switch(parent.kind) {
        case Scope.CLASS_SCOPE:
        case Scope.METHOD_SCOPE:
          parent.referenceContext().tagAsHavingErrors();
          return;
        default:
          parent = parent.parent;
          break;
      }
View Full Code Here

    CompilationUnitDeclaration previousUnitBeingCompleted = this.lookupEnvironment.unitBeingCompleted;
    this.lookupEnvironment.unitBeingCompleted = this.compilationUnitDeclaration;
    try {
      this.hasComputedVisibleElementBindings = true;
 
      Scope scope = this.assistScope;
      ASTNode astNode = this.assistNode;
      boolean notInJavadoc = this.completionContext.javadoc == 0;
 
      this.visibleLocalVariables = new ObjectVector();
      this.visibleFields = new ObjectVector();
      this.visibleMethods = new ObjectVector();
 
      ReferenceContext referenceContext = scope.referenceContext();
      if (referenceContext instanceof AbstractMethodDeclaration || referenceContext instanceof LambdaExpression) {
        // completion is inside a method body
        searchVisibleVariablesAndMethods(scope, this.visibleLocalVariables, this.visibleFields, this.visibleMethods, notInJavadoc);
      } else if (referenceContext instanceof TypeDeclaration) {
        TypeDeclaration typeDeclaration = (TypeDeclaration) referenceContext;
View Full Code Here

TOP

Related Classes of org.eclipse.jdt.internal.compiler.lookup.Scope$Substitutor

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.