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

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


   */
  private void createTypeProposal(ReferenceBinding refBinding, char[] typeName, int accessibility, char[] completionName, int relevance) {

    // Create standard type proposal
    if(!this.requestor.isIgnored(CompletionProposal.TYPE_REF) && (this.assistNodeInJavadoc & CompletionOnJavadoc.ONLY_INLINE_TAG) == 0) {
      CompletionProposal proposal = CompletionProposal.create(CompletionProposal.TYPE_REF, this.actualCompletionPosition - this.offset);
      proposal.nameLookup = this.nameEnvironment.nameLookup;
      proposal.completionEngine = this;
      proposal.setDeclarationSignature(refBinding.qualifiedPackageName());
      proposal.setSignature(getSignature(refBinding));
      proposal.setPackageName(refBinding.qualifiedPackageName());
      proposal.setTypeName(typeName);
      proposal.setCompletion(completionName);
      proposal.setFlags(refBinding.modifiers);
      proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
      proposal.setRelevance(relevance);
      this.requestor.accept(proposal);
      if(DEBUG) {
        this.printDebug(proposal);
      }
    }
   
    // Create javadoc text proposal if necessary
    if ((this.assistNodeInJavadoc & CompletionOnJavadoc.TEXT) != 0 && !this.requestor.isIgnored(CompletionProposal.JAVADOC_TYPE_REF)) {
      char[] javadocCompletion= inlineTagCompletion(completionName, JavadocTagConstants.TAG_LINK);
      CompletionProposal proposal = CompletionProposal.create(CompletionProposal.JAVADOC_TYPE_REF, this.actualCompletionPosition - this.offset);
      proposal.nameLookup = this.nameEnvironment.nameLookup;
      proposal.completionEngine = this;
      proposal.setDeclarationSignature(refBinding.qualifiedPackageName());
      proposal.setSignature(getSignature(refBinding));
      proposal.setPackageName(refBinding.qualifiedPackageName());
      proposal.setTypeName(typeName);
      proposal.setCompletion(javadocCompletion);
      proposal.setFlags(refBinding.modifiers);
      int start = (this.assistNodeInJavadoc & CompletionOnJavadoc.REPLACE_TAG) != 0 ? this.javadocTagPosition : this.startPosition;
      proposal.setReplaceRange(start - this.offset, this.endPosition - this.offset);
      proposal.setRelevance(relevance+R_INLINE_TAG);
      this.requestor.accept(proposal);
      if(DEBUG) {
        this.printDebug(proposal);
      }
    }
View Full Code Here


  private void createTypeParameterProposal(TypeParameter typeParameter, int relevance) {
    char[] completionName = typeParameter.name;

    // Create standard type proposal
    if(!this.requestor.isIgnored(CompletionProposal.TYPE_REF)) {
      CompletionProposal proposal = CompletionProposal.create(CompletionProposal.TYPE_REF, this.actualCompletionPosition - this.offset);
      proposal.nameLookup = this.nameEnvironment.nameLookup;
      proposal.completionEngine = this;
      proposal.setSignature(getSignature(typeParameter.binding));
      proposal.setTypeName(completionName);
      proposal.setCompletion(completionName);
      proposal.setFlags(typeParameter.modifiers);
      proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
      proposal.setRelevance(relevance);
      this.requestor.accept(proposal);
      if(DEBUG) {
        this.printDebug(proposal);
      }
    }
   
    // Create javadoc text proposal if necessary
    if ((this.assistNodeInJavadoc & CompletionOnJavadoc.TEXT) != 0 && !this.requestor.isIgnored(CompletionProposal.JAVADOC_TYPE_REF)) {
      char[] javadocCompletion= inlineTagCompletion(completionName, JavadocTagConstants.TAG_LINK);
      CompletionProposal proposal = CompletionProposal.create(CompletionProposal.JAVADOC_TYPE_REF, this.actualCompletionPosition - this.offset);
      proposal.nameLookup = this.nameEnvironment.nameLookup;
      proposal.completionEngine = this;
      proposal.setSignature(getSignature(typeParameter.binding));
      proposal.setTypeName(javadocCompletion);
      proposal.setCompletion(javadocCompletion);
      proposal.setFlags(typeParameter.modifiers);
      proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
      proposal.setRelevance(relevance+R_INLINE_TAG);
      this.requestor.accept(proposal);
      if(DEBUG) {
        this.printDebug(proposal);
      }
    }
View Full Code Here

      }
     
      this.noProposal = false;
      // Standard proposal
      if (!this.isIgnored(CompletionProposal.FIELD_REF, missingElements != null) && (this.assistNodeInJavadoc & CompletionOnJavadoc.ONLY_INLINE_TAG) == 0) {
        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);
        if (missingElements != null) {
          CompletionProposal[] subProposals = new CompletionProposal[missingElements.length];
          for (int i = 0; i < missingElements.length; i++) {
            subProposals[i] =
              createRequiredTypeProposal(
                  missingElements[i],
                  missingElementsStarts[i],
                  missingElementsEnds[i],
                  relevance);
          }
          proposal.setRequiredProposals(subProposals);
        }
        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);
        }
      }

      // Javadoc completions
      if ((this.assistNodeInJavadoc & CompletionOnJavadoc.TEXT) != 0 && !this.requestor.isIgnored(CompletionProposal.JAVADOC_FIELD_REF)) {
        char[] javadocCompletion = inlineTagCompletion(completion, JavadocTagConstants.TAG_LINK);
        CompletionProposal proposal = this.createProposal(CompletionProposal.JAVADOC_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(javadocCompletion);
        proposal.setFlags(field.modifiers);
        int start = (this.assistNodeInJavadoc & CompletionOnJavadoc.REPLACE_TAG) != 0 ? this.javadocTagPosition : this.startPosition;
        proposal.setReplaceRange(start - this.offset, this.endPosition - this.offset);
        proposal.setRelevance(relevance+R_INLINE_TAG);
        this.requestor.accept(proposal);
        if(DEBUG) {
          this.printDebug(proposal);
        }
        // Javadoc value completion for static fields
        if (field.isStatic() && !this.requestor.isIgnored(CompletionProposal.JAVADOC_VALUE_REF)) {
          javadocCompletion = inlineTagCompletion(completion, JavadocTagConstants.TAG_VALUE);
          CompletionProposal valueProposal = this.createProposal(CompletionProposal.JAVADOC_VALUE_REF, this.actualCompletionPosition);
          valueProposal.setDeclarationSignature(getSignature(field.declaringClass));
          valueProposal.setSignature(getSignature(field.type));
          valueProposal.setDeclarationPackageName(field.declaringClass.qualifiedPackageName());
          valueProposal.setDeclarationTypeName(field.declaringClass.qualifiedSourceName());
          valueProposal.setPackageName(field.type.qualifiedPackageName());
          valueProposal.setTypeName(field.type.qualifiedSourceName());
          valueProposal.setName(field.name);
          valueProposal.setCompletion(javadocCompletion);
          valueProposal.setFlags(field.modifiers);
          valueProposal.setReplaceRange(start - this.offset, this.endPosition - this.offset);
          valueProposal.setRelevance(relevance+R_VALUE_TAG);
          this.requestor.accept(valueProposal);
          if(DEBUG) {
            this.printDebug(valueProposal);
          }
        }
View Full Code Here

        if (missingElements != null) {
          relevance += computeRelevanceForMissingElements(missingElementsHaveProblems);
        }
        this.noProposal = false;
        if(!isIgnored(CompletionProposal.FIELD_REF, missingElements != null)) {
          CompletionProposal proposal = this.createProposal(CompletionProposal.FIELD_REF, this.actualCompletionPosition);
          proposal.setDeclarationSignature(getSignature(receiverType));
          proposal.setSignature(INT_SIGNATURE);
          //proposal.setDeclarationPackageName(null);
          //proposal.setDeclarationTypeName(null);
          //proposal.setPackageName(null);
          proposal.setTypeName(INT);
          proposal.setName(lengthField);
          if (missingElements != null) {
            CompletionProposal[] subProposals = new CompletionProposal[missingElements.length];
            for (int i = 0; i < missingElements.length; i++) {
              subProposals[i] =
                createRequiredTypeProposal(
                    missingElements[i],
                    missingElementsStarts[i],
                    missingElementsEnds[i],
                    relevance);
            }
            proposal.setRequiredProposals(subProposals);
          }
          proposal.setCompletion(lengthField);
          proposal.setFlags(Flags.AccPublic);
          proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
          proposal.setRelevance(relevance);
          this.requestor.accept(proposal);
          if(DEBUG) {
            this.printDebug(proposal);
          }
        }
      }
      if (proposeMethod
        && token.length <= cloneMethod.length
        && CharOperation.prefixEquals(token, cloneMethod, false /* ignore case */)
      ) {
        ReferenceBinding objectRef = scope.getJavaLangObject();
       
        int relevance = computeBaseRelevance();
        relevance += computeRelevanceForResolution();
        relevance += computeRelevanceForInterestingProposal();
        relevance += computeRelevanceForCaseMatching(token, cloneMethod);
        relevance += computeRelevanceForExpectingType(objectRef);
        relevance += computeRelevanceForStatic(false, false);
        relevance += computeRelevanceForQualification(false);
        relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE); // no access restriction for clone() method
        if (missingElements != null) {
          relevance += computeRelevanceForMissingElements(missingElementsHaveProblems);
        }
        char[] completion;
        if (this.source != null
          && this.source.length > this.endPosition
          && this.source[this.endPosition] == '(') {
          completion = cloneMethod;
          } else {
          completion = CharOperation.concat(cloneMethod, new char[] { '(', ')' });
        }
        this.noProposal = false;
        if (!this.isIgnored(CompletionProposal.METHOD_REF, missingElements != null)) {
          CompletionProposal proposal = this.createProposal(CompletionProposal.METHOD_REF, this.actualCompletionPosition);
          proposal.setDeclarationSignature(getSignature(receiverType));
          proposal.setSignature(
              this.compilerOptions.sourceLevel > ClassFileConstants.JDK1_4 && receiverType.isArrayType() ?
                  createMethodSignature(
                      CharOperation.NO_CHAR_CHAR,
                      CharOperation.NO_CHAR_CHAR,
                      getSignature(receiverType)) :
                  createMethodSignature(
                      CharOperation.NO_CHAR_CHAR,
                      CharOperation.NO_CHAR_CHAR,
                      CharOperation.concatWith(JAVA_LANG, '.'),
                      OBJECT));
          //proposal.setOriginalSignature(null);
          //proposal.setDeclarationPackageName(null);
          //proposal.setDeclarationTypeName(null);
          //proposal.setParameterPackageNames(null);
          //proposal.setParameterTypeNames(null);
          proposal.setPackageName(CharOperation.concatWith(JAVA_LANG, '.'));
          proposal.setTypeName(OBJECT);
          proposal.setName(cloneMethod);
          if (missingElements != null) {
            CompletionProposal[] subProposals = new CompletionProposal[missingElements.length];
            for (int i = 0; i < missingElements.length; i++) {
              subProposals[i] =
                createRequiredTypeProposal(
                    missingElements[i],
                    missingElementsStarts[i],
                    missingElementsEnds[i],
                    relevance);
            }
            proposal.setRequiredProposals(subProposals);
          }
          proposal.setCompletion(completion);
          proposal.setFlags(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 += computeRelevanceForCaseMatching(completionToken, name);
    relevance += computeRelevanceForQualification(false);
    relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE); // no access restriction for local variable
    CompletionEngine.this.noProposal = false;
    if(!CompletionEngine.this.requestor.isIgnored(CompletionProposal.LOCAL_VARIABLE_REF)) {
      CompletionProposal proposal = CompletionEngine.this.createProposal(CompletionProposal.LOCAL_VARIABLE_REF, CompletionEngine.this.actualCompletionPosition);
      proposal.setSignature(JAVA_LANG_OBJECT_SIGNATURE);
      proposal.setPackageName(JAVA_LANG_NAME);
      proposal.setTypeName(OBJECT);
      proposal.setName(name);
      proposal.setCompletion(name);
      proposal.setFlags(Flags.AccDefault);
      proposal.setReplaceRange(CompletionEngine.this.startPosition - CompletionEngine.this.offset, CompletionEngine.this.endPosition - CompletionEngine.this.offset);
      proposal.setRelevance(relevance);
      CompletionEngine.this.requestor.accept(proposal);
      if(DEBUG) {
        CompletionEngine.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.