Package org.aspectj.org.eclipse.jdt.core

Examples of org.aspectj.org.eclipse.jdt.core.CompletionProposal


          relevance += computeRelevanceForCaseMatching(this.completionToken, name);
          relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE);
         
          this.noProposal = false;
          if(!this.requestor.isIgnored(CompletionProposal.METHOD_REF)) {
            CompletionProposal proposal = this.createProposal(CompletionProposal.METHOD_REF, this.actualCompletionPosition);
            proposal.setDeclarationSignature(getSignature(currentType));
            proposal.setSignature(getSignature(constructor));
            MethodBinding original = constructor.original();
            if(original != constructor) {
              proposal.setOriginalSignature(getSignature(original));
            }
            proposal.setDeclarationPackageName(currentType.qualifiedPackageName());
            proposal.setDeclarationTypeName(currentType.qualifiedSourceName());
            proposal.setParameterPackageNames(parameterPackageNames);
            proposal.setParameterTypeNames(parameterTypeNames);
            //proposal.setPackageName(null);
            //proposal.setTypeName(null);
            proposal.setName(name);
            proposal.setIsContructor(true);
            proposal.setCompletion(completion);
            proposal.setFlags(constructor.modifiers);
            proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
            proposal.setRelevance(relevance);
            if(parameterNames != null) proposal.setParameterNames(parameterNames);
            this.requestor.accept(proposal);
            if(DEBUG) {
              this.printDebug(proposal);
            }
          }
View Full Code Here


            relevance += computeRelevanceForInterestingProposal();
            relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE);
           
            this.noProposal = false;
            if(!this.requestor.isIgnored(CompletionProposal.ANONYMOUS_CLASS_DECLARATION)) {
              CompletionProposal proposal = this.createProposal(CompletionProposal.ANONYMOUS_CLASS_DECLARATION, this.actualCompletionPosition);
              proposal.setDeclarationSignature(getSignature(currentType));
              proposal.setDeclarationKey(currentType.computeUniqueKey());
              proposal.setSignature(getSignature(constructor));
              MethodBinding original = constructor.original();
              if(original != constructor) {
                proposal.setOriginalSignature(getSignature(original));
              }
              proposal.setKey(constructor.computeUniqueKey());
              proposal.setDeclarationPackageName(currentType.qualifiedPackageName());
              proposal.setDeclarationTypeName(currentType.qualifiedSourceName());
              proposal.setParameterPackageNames(parameterPackageNames);
              proposal.setParameterTypeNames(parameterTypeNames);
              //proposal.setPackageName(null);
              //proposal.setTypeName(null);
              proposal.setCompletion(completion);
              proposal.setFlags(constructor.modifiers);
              proposal.setReplaceRange(this.endPosition - this.offset, this.endPosition - this.offset);
              proposal.setRelevance(relevance);
              if(parameterNames != null) proposal.setParameterNames(parameterNames);
              this.requestor.accept(proposal);
              if(DEBUG) {
                this.printDebug(proposal);
              }
            }
          } else {
            int relevance = computeBaseRelevance();
            relevance += computeRelevanceForResolution();
            relevance += computeRelevanceForInterestingProposal();
            relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE);

            // Special case for completion in javadoc
            if (this.assistNodeInJavadoc > 0) {
              Expression receiver = null;
              char[] selector = null;
              if (invocationSite instanceof CompletionOnJavadocAllocationExpression) {
                CompletionOnJavadocAllocationExpression alloc = (CompletionOnJavadocAllocationExpression) invocationSite;
                receiver = alloc.type;
              } else if (invocationSite instanceof CompletionOnJavadocFieldReference) {
                CompletionOnJavadocFieldReference fieldRef = (CompletionOnJavadocFieldReference) invocationSite;
                receiver = fieldRef.receiver;
              }
              if (receiver != null) {
                StringBuffer javadocCompletion = new StringBuffer();
                if (receiver.isThis()) {
                  selector = (((JavadocImplicitTypeReference)receiver).token);
                  if ((this.assistNodeInJavadoc & CompletionOnJavadoc.TEXT) != 0) {
                    javadocCompletion.append('#');
                  }
                } else if (receiver instanceof JavadocSingleTypeReference) {
                  JavadocSingleTypeReference typeRef = (JavadocSingleTypeReference) receiver;
                  selector = typeRef.token;
                  if ((this.assistNodeInJavadoc & CompletionOnJavadoc.TEXT) != 0) {
                    javadocCompletion.append(typeRef.token);
                    javadocCompletion.append('#');
                  }
                } else if (receiver instanceof JavadocQualifiedTypeReference) {
                  JavadocQualifiedTypeReference typeRef = (JavadocQualifiedTypeReference) receiver;
                  selector = typeRef.tokens[typeRef.tokens.length-1];
                  if ((this.assistNodeInJavadoc & CompletionOnJavadoc.TEXT) != 0) {
                    javadocCompletion.append(CharOperation.concatWith(typeRef.tokens, '.'));
                    javadocCompletion.append('#');
                  }
                }
                // Append parameters types
                javadocCompletion.append(selector);
                javadocCompletion.append('(');
                if (constructor.parameters != null) {
                  boolean isVarargs = constructor.isVarargs();
                  for (int p=0, ln=constructor.parameters.length; p<ln; p++) {
                    if (p>0) javadocCompletion.append(", "); //$NON-NLS-1$
                    TypeBinding argTypeBinding = constructor.parameters[p];
                    if (isVarargs && p == ln - 1)  {
                      createVargsType(argTypeBinding.erasure(), javadocCompletion);
                    } else {
                      createType(argTypeBinding.erasure(), javadocCompletion);
                    }
                  }
                }
                javadocCompletion.append(')');
                completion = javadocCompletion.toString().toCharArray();
              }
            }
           
            // Create standard proposal
            this.noProposal = false;
            if(!this.requestor.isIgnored(CompletionProposal.METHOD_REF) && (this.assistNodeInJavadoc & CompletionOnJavadoc.ONLY_INLINE_TAG) == 0) {
              CompletionProposal proposal = this.createProposal(CompletionProposal.METHOD_REF, this.actualCompletionPosition);
              proposal.setDeclarationSignature(getSignature(currentType));
              proposal.setSignature(getSignature(constructor));
              MethodBinding original = constructor.original();
              if(original != constructor) {
                proposal.setOriginalSignature(getSignature(original));
              }
              proposal.setDeclarationPackageName(currentType.qualifiedPackageName());
              proposal.setDeclarationTypeName(currentType.qualifiedSourceName());
              proposal.setParameterPackageNames(parameterPackageNames);
              proposal.setParameterTypeNames(parameterTypeNames);
              //proposal.setPackageName(null);
              //proposal.setTypeName(null);
              proposal.setName(currentType.sourceName());
              proposal.setIsContructor(true);
              proposal.setCompletion(completion);
              proposal.setFlags(constructor.modifiers);
              int start = (this.assistNodeInJavadoc > 0) ? this.startPosition : this.endPosition;
              proposal.setReplaceRange(start - this.offset, this.endPosition - this.offset);
              proposal.setRelevance(relevance);
              if(parameterNames != null) proposal.setParameterNames(parameterNames);
              this.requestor.accept(proposal);
              if(DEBUG) {
                this.printDebug(proposal);
              }
            }
            if ((this.assistNodeInJavadoc & CompletionOnJavadoc.TEXT) != 0 && !this.requestor.isIgnored(CompletionProposal.JAVADOC_METHOD_REF)) {
              char[] javadocCompletion = inlineTagCompletion(completion, JavadocTagConstants.TAG_LINK);
              CompletionProposal proposal = this.createProposal(CompletionProposal.JAVADOC_METHOD_REF, this.actualCompletionPosition);
              proposal.setDeclarationSignature(getSignature(currentType));
              proposal.setSignature(getSignature(constructor));
              MethodBinding original = constructor.original();
              if(original != constructor) {
                proposal.setOriginalSignature(getSignature(original));
              }
              proposal.setDeclarationPackageName(currentType.qualifiedPackageName());
              proposal.setDeclarationTypeName(currentType.qualifiedSourceName());
              proposal.setParameterPackageNames(parameterPackageNames);
              proposal.setParameterTypeNames(parameterTypeNames);
              //proposal.setPackageName(null);
              //proposal.setTypeName(null);
              proposal.setName(currentType.sourceName());
              proposal.setIsContructor(true);
              proposal.setCompletion(javadocCompletion);
              proposal.setFlags(constructor.modifiers);
              int start = (this.assistNodeInJavadoc > 0) ? this.startPosition : this.endPosition;
              if ((this.assistNodeInJavadoc & CompletionOnJavadoc.REPLACE_TAG) != 0) start = this.javadocTagPosition;
              proposal.setReplaceRange(start - this.offset, this.endPosition - this.offset);
              proposal.setRelevance(relevance+R_INLINE_TAG);
              if(parameterNames != null) proposal.setParameterNames(parameterNames);
              this.requestor.accept(proposal);
              if(DEBUG) {
                this.printDebug(proposal);
              }
            }
View Full Code Here

    }
    relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE);
   
    this.noProposal = false;
    if(!this.requestor.isIgnored(CompletionProposal.PACKAGE_REF)) {
      CompletionProposal proposal = this.createProposal(CompletionProposal.PACKAGE_REF, this.actualCompletionPosition);
      proposal.setDeclarationSignature(packageName);
      proposal.setPackageName(packageName);
      proposal.setCompletion(completion);
      proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
      proposal.setRelevance(relevance);
      this.requestor.accept(proposal);
      if(DEBUG) {
        this.printDebug(proposal);
      }
    }
View Full Code Here

            relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE); // no access restriction for keywords
            relevance += R_NON_INHERITED;
           
            this.noProposal = false;
            if (!this.requestor.isIgnored(CompletionProposal.KEYWORD)) {
              CompletionProposal proposal = this.createProposal(CompletionProposal.KEYWORD, this.actualCompletionPosition);
              proposal.setName(Keywords.THIS);
              proposal.setCompletion(Keywords.THIS);
              proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
              proposal.setRelevance(relevance);
              this.requestor.accept(proposal);
              if (DEBUG) {
                this.printDebug(proposal);
              }
            }
View Full Code Here

      relevance += computeRelevanceForQualification(false);
      relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE);
     
      this.noProposal = false;
      if(!this.requestor.isIgnored(CompletionProposal.ANNOTATION_ATTRIBUTE_REF)) {
        CompletionProposal proposal = this.createProposal(CompletionProposal.ANNOTATION_ATTRIBUTE_REF, this.actualCompletionPosition);
        proposal.setDeclarationSignature(getSignature(method.declaringClass));
        proposal.setSignature(getSignature(method.returnType));
        proposal.setName(method.selector);
        proposal.setCompletion(method.selector);
        proposal.setFlags(method.modifiers);
        proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
        proposal.setRelevance(relevance);
        this.requestor.accept(proposal);
        if(DEBUG) {
          this.printDebug(proposal);
        }
      }
View Full Code Here

      relevance += computeRelevanceForInterestingProposal();
      relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE);
     
      this.noProposal = false;
      if(!this.requestor.isIgnored(CompletionProposal.ANONYMOUS_CLASS_DECLARATION)) {
        CompletionProposal proposal = this.createProposal(CompletionProposal.ANONYMOUS_CLASS_DECLARATION, this.actualCompletionPosition);
        proposal.setDeclarationSignature(getSignature(currentType));
        proposal.setDeclarationKey(currentType.computeUniqueKey());
        proposal.setSignature(
            createMethodSignature(
                CharOperation.NO_CHAR_CHAR,
                CharOperation.NO_CHAR_CHAR,
                CharOperation.NO_CHAR,
                CharOperation.NO_CHAR));
        //proposal.setOriginalSignature(null);
        //proposal.setUniqueKey(null);
        proposal.setDeclarationPackageName(currentType.qualifiedPackageName());
        proposal.setDeclarationTypeName(currentType.qualifiedSourceName());
        //proposal.setParameterPackageNames(null);
        //proposal.setParameterTypeNames(null);
        //proposal.setPackageName(null);
        //proposal.setTypeName(null);
        proposal.setCompletion(completion);
        proposal.setFlags(Flags.AccPublic);
        proposal.setReplaceRange(this.endPosition - this.offset, this.endPosition - this.offset);
        proposal.setRelevance(relevance);
        this.requestor.accept(proposal);
        if(DEBUG) {
          this.printDebug(proposal);
        }
      }
View Full Code Here

      relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE); //no access restriction for class field
      relevance += R_NON_INHERITED;
     
      this.noProposal = false;
      if(!this.requestor.isIgnored(CompletionProposal.FIELD_REF)) {
        CompletionProposal proposal = this.createProposal(CompletionProposal.FIELD_REF, this.actualCompletionPosition);
        //proposal.setDeclarationSignature(null);
        char[] signature =
          createNonGenericTypeSignature(
            CharOperation.concatWith(JAVA_LANG, '.'),
            CLASS);
        if (this.compilerOptions.sourceLevel > ClassFileConstants.JDK1_4) {
          // add type argument
          char[] typeArgument = getTypeSignature(receiverType);
          int oldLength = signature.length;
          int argumentLength = typeArgument.length;
          int newLength = oldLength + argumentLength + 2;
          System.arraycopy(signature, 0, signature = new char[newLength], 0, oldLength - 1);
          signature[oldLength - 1] = '<';
          System.arraycopy(typeArgument, 0, signature, oldLength , argumentLength);
          signature[newLength - 2] = '>';
          signature[newLength - 1] = ';';
        }
        proposal.setSignature(signature);
        //proposal.setDeclarationPackageName(null);
        //proposal.setDeclarationTypeName(null);
        proposal.setPackageName(CharOperation.concatWith(JAVA_LANG, '.'));
        proposal.setTypeName(CLASS);
        proposal.setName(classField);
        proposal.setCompletion(classField);
        proposal.setFlags(Flags.AccStatic | Flags.AccPublic);
        proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
        proposal.setRelevance(relevance);
        this.requestor.accept(proposal);
        if(DEBUG) {
          this.printDebug(proposal);
        }
      }
View Full Code Here

        relevance += computeRelevanceForQualification(false);
        relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE);
       
        this.noProposal = false;
        if(!this.requestor.isIgnored(CompletionProposal.FIELD_REF)) {
          CompletionProposal proposal = this.createProposal(CompletionProposal.FIELD_REF, this.actualCompletionPosition);
          proposal.setDeclarationSignature(getSignature(field.declaringClass));
          proposal.setSignature(getSignature(field.type));
          proposal.setDeclarationPackageName(field.declaringClass.qualifiedPackageName());
          proposal.setDeclarationTypeName(field.declaringClass.qualifiedSourceName());
          proposal.setPackageName(field.type.qualifiedPackageName());
          proposal.setTypeName(field.type.qualifiedSourceName());
          proposal.setName(field.name);
          proposal.setCompletion(completion);
          proposal.setFlags(field.modifiers);
          proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
          proposal.setRelevance(relevance);
          this.requestor.accept(proposal);
          if(DEBUG) {
            this.printDebug(proposal);
          }
        }
View Full Code Here

        this.startPosition = previousStartPosition;
      }
    }
 
  private CompletionProposal createRequiredTypeProposal(Binding binding, int start, int end, int relevance) {
    CompletionProposal proposal = null;
    if (binding instanceof ReferenceBinding) {
      ReferenceBinding typeBinding = (ReferenceBinding) binding;
     
      char[] packageName = typeBinding.qualifiedPackageName();
      char[] typeName = typeBinding.qualifiedSourceName();
      char[] fullyQualifiedName = CharOperation.concat(packageName, typeName, '.');
     
      proposal = this.createProposal(CompletionProposal.TYPE_REF, this.actualCompletionPosition);
      proposal.nameLookup = this.nameEnvironment.nameLookup;
      proposal.completionEngine = this;
      proposal.setDeclarationSignature(packageName);
      proposal.setSignature(getSignature(typeBinding));
      proposal.setPackageName(packageName);
      proposal.setTypeName(typeName);
      proposal.setCompletion(fullyQualifiedName);
      proposal.setFlags(typeBinding.modifiers);
      proposal.setReplaceRange(start - this.offset, end - this.offset);
      proposal.setRelevance(relevance);
    } else if (binding instanceof PackageBinding) {
      PackageBinding packageBinding = (PackageBinding) binding;
     
      char[] packageName = CharOperation.concatWith(packageBinding.compoundName, '.');
     
      proposal = this.createProposal(CompletionProposal.PACKAGE_REF, this.actualCompletionPosition);
      proposal.setDeclarationSignature(packageName);
      proposal.setPackageName(packageName);
      proposal.setCompletion(packageName);
      proposal.setReplaceRange(start - this.offset, end - this.offset);
      proposal.setRelevance(relevance);
    }
    return proposal;
  }
View Full Code Here

      relevance += computeRelevanceForQualification(false);
      relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE);
     
      this.noProposal = false;
      if(!this.requestor.isIgnored(CompletionProposal.METHOD_REF)) {
        CompletionProposal proposal = this.createProposal(CompletionProposal.METHOD_REF, this.actualCompletionPosition);
        proposal.setDeclarationSignature(getSignature(method.declaringClass));
        proposal.setSignature(getSignature(method));
        MethodBinding original = method.original();
        if(original != method) {
          proposal.setOriginalSignature(getSignature(original));
        }
        proposal.setDeclarationPackageName(method.declaringClass.qualifiedPackageName());
        proposal.setDeclarationTypeName(method.declaringClass.qualifiedSourceName());
        proposal.setParameterPackageNames(parameterPackageNames);
        proposal.setParameterTypeNames(parameterTypeNames);
        proposal.setPackageName(method.returnType.qualifiedPackageName());
        proposal.setTypeName(method.returnType.qualifiedSourceName());
        proposal.setName(method.selector);
        proposal.setCompletion(completion);
        proposal.setFlags(method.modifiers);
        proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
        proposal.setRelevance(relevance);
        if(parameterNames != null) proposal.setParameterNames(parameterNames);
        this.requestor.accept(proposal);
        if(DEBUG) {
          this.printDebug(proposal);
        }
      }
View Full Code Here

TOP

Related Classes of org.aspectj.org.eclipse.jdt.core.CompletionProposal

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.