List of usage examples for org.eclipse.jdt.core CompletionProposal getRelevance
public int getRelevance()
From source file:com.amashchenko.eclipse.strutsclipse.java.SimpleJavaCompletionProposal.java
License:Apache License
public SimpleJavaCompletionProposal(CompletionProposal proposal, JavaContentAssistInvocationContext context, Image img) {/*from w w w .j ava 2s . co m*/ if (CompletionProposal.METHOD_REF == proposal.getKind()) { this.replacementString = String.valueOf(proposal.getName()); } else { this.replacementString = String.valueOf(proposal.getCompletion()); } this.displayString = context.getLabelProvider().createLabel(proposal); this.relevance = proposal.getRelevance(); this.image = img; }
From source file:com.microsoft.javapkgsrv.JavaParser.java
License:MIT License
private AutocompleteResponse.Completion translateToCompletion(CompletionProposal proposal) { AutocompleteResponse.Completion.Builder builder = AutocompleteResponse.Completion.newBuilder() .setKind(AutocompleteResponse.Completion.CompletionKind.valueOf(proposal.getKind())) .setIsConstructor(proposal.isConstructor()) .setCompletionText(String.copyValueOf(proposal.getCompletion())).setFlags(proposal.getFlags()) .setRelevance(proposal.getRelevance()).setReplaceStart(proposal.getReplaceStart()) .setReplaceEnd(proposal.getReplaceEnd()); char[] sig = proposal.getSignature(); if (sig != null) { if (proposal.getKind() == CompletionProposal.METHOD_REF || proposal.getKind() == CompletionProposal.JAVADOC_METHOD_REF) builder.setSignature(new String(Signature.toCharArray(sig, proposal.getName(), null, false, true))); else/* w w w.j a va2 s . c o m*/ builder.setSignature(new String(Signature.toCharArray(sig))); } char[] name = proposal.getName(); if (name == null) builder.setName(builder.getCompletionText()); else builder.setName(String.copyValueOf(name)); return builder.build(); }
From source file:edu.brown.cs.bubbles.bedrock.BedrockUtil.java
License:Open Source License
/********************************************************************************/ static void outputCompletion(CompletionProposal cp, IvyXmlWriter xw) { xw.begin("COMPLETION"); fieldValue(xw, "ACCESSIBILITY", cp.getAccessibility(), accessibility_types); if (cp.isConstructor()) xw.field("CONSTRUCTOR", true); xw.field("TEXT", cp.getCompletion()); xw.field("INDEX", cp.getCompletionLocation()); xw.field("DECLKEY", cp.getDeclarationKey()); switch (cp.getKind()) { case CompletionProposal.ANNOTATION_ATTRIBUTE_REF: case CompletionProposal.ANONYMOUS_CLASS_DECLARATION: case CompletionProposal.FIELD_IMPORT: case CompletionProposal.FIELD_REF: case CompletionProposal.FIELD_REF_WITH_CASTED_RECEIVER: case CompletionProposal.METHOD_IMPORT: case CompletionProposal.METHOD_REF: case CompletionProposal.METHOD_REF_WITH_CASTED_RECEIVER: case CompletionProposal.METHOD_DECLARATION: case CompletionProposal.POTENTIAL_METHOD_DECLARATION: xw.field("DECLSIGN", cp.getDeclarationSignature()); break;/* w w w . j a v a 2s . c o m*/ case CompletionProposal.PACKAGE_REF: case CompletionProposal.TYPE_IMPORT: case CompletionProposal.TYPE_REF: xw.field("DOTNAME", cp.getDeclarationSignature()); break; } fieldFlags(xw, "ACCESS", cp.getFlags(), access_flags); xw.field("FLAGS", cp.getFlags()); xw.field("KEY", cp.getKey()); xw.field("NAME", cp.getName()); xw.field("RELEVANCE", cp.getRelevance()); xw.field("REPLACE_START", cp.getReplaceStart()); xw.field("REPLACE_END", cp.getReplaceEnd()); xw.field("SIGNATURE", cp.getSignature()); xw.field("TOKEN_START", cp.getTokenStart()); xw.field("TOKEN_END", cp.getTokenEnd()); fieldValue(xw, "KIND", cp.getKind(), completion_types); if (cp instanceof ICompletionProposalExtension4) { ICompletionProposalExtension4 icp4 = (ICompletionProposalExtension4) cp; xw.field("AUTO", icp4.isAutoInsertable()); } if (CompletionFlags.isStaticImport(cp.getAdditionalFlags())) xw.field("STATICIMPORT", true); if (cp.getKind() == CompletionProposal.FIELD_REF_WITH_CASTED_RECEIVER || cp.getKind() == CompletionProposal.METHOD_REF_WITH_CASTED_RECEIVER) { xw.field("RECEIVER_SIGN", cp.getReceiverSignature()); xw.field("RECEIVER_START", cp.getReceiverStart()); xw.field("RECEIVER_END", cp.getReceiverEnd()); } xw.field("RCVR", cp.getReceiverSignature()); xw.cdataElement("DESCRIPTION", cp.toString()); CompletionProposal[] rq = cp.getRequiredProposals(); if (rq != null) { xw.begin("REQUIRED"); for (CompletionProposal xcp : rq) outputCompletion(xcp, xw); xw.end("REQUIRED"); } xw.end("COMPLETION"); }
From source file:org.codehaus.groovy.eclipse.codeassist.processors.LocalVariableCompletionProcessor.java
License:Apache License
/** * @param offset/* w ww .ja va 2 s .c o m*/ * @param replaceLength * @param context * @param proposals * @param nameType */ private ICompletionProposal createProposal(String replaceName, ClassNode type) { CompletionProposal proposal = CompletionProposal.create(CompletionProposal.LOCAL_VARIABLE_REF, offset); proposal.setCompletion(replaceName.toCharArray()); proposal.setReplaceRange(offset - replaceLength, getContext().completionEnd); proposal.setSignature(ProposalUtils.createTypeSignature(type)); proposal.setRelevance(Relevance.HIGH.getRelavance()); LazyJavaCompletionProposal completion = new LazyJavaCompletionProposal(proposal, javaContext); completion.setRelevance(proposal.getRelevance()); return completion; }
From source file:org.codehaus.groovy.eclipse.codeassist.proposals.GroovyJavaFieldCompletionProposal.java
License:Apache License
public GroovyJavaFieldCompletionProposal(CompletionProposal proposal, Image image, StyledString displayString) { super(String.valueOf(proposal.getName()), proposal.getReplaceStart(), proposal.getReplaceEnd() - proposal.getReplaceStart(), image, displayString, proposal.getRelevance()); this.proposal = proposal; this.setRelevance(proposal.getRelevance()); this.setTriggerCharacters(ProposalUtils.VAR_TRIGGER); }
From source file:org.eclipse.flux.jdt.services.ContentAssistService.java
License:Open Source License
protected JSONArray computeContentAssist(String username, String resourcePath, int offset, String prefix) throws JSONException { final List<CompletionProposal> proposals = new ArrayList<CompletionProposal>(); final CompletionContext[] completionContextParam = new CompletionContext[] { null }; ICompilationUnit liveEditUnit = liveEditUnits.getLiveEditUnit(username, resourcePath); try {//from w ww . jav a 2s. c o m if (liveEditUnit != null) { CompletionRequestor collector = new CompletionRequestor() { @Override public void accept(CompletionProposal proposal) { proposals.add(proposal); } @Override public void acceptContext(CompletionContext context) { super.acceptContext(context); completionContextParam[0] = context; } }; // Allow completions for unresolved types - since 3.3 collector.setAllowsRequiredProposals(CompletionProposal.FIELD_REF, CompletionProposal.TYPE_REF, true); collector.setAllowsRequiredProposals(CompletionProposal.FIELD_REF, CompletionProposal.TYPE_IMPORT, true); collector.setAllowsRequiredProposals(CompletionProposal.FIELD_REF, CompletionProposal.FIELD_IMPORT, true); collector.setAllowsRequiredProposals(CompletionProposal.METHOD_REF, CompletionProposal.TYPE_REF, true); collector.setAllowsRequiredProposals(CompletionProposal.METHOD_REF, CompletionProposal.TYPE_IMPORT, true); collector.setAllowsRequiredProposals(CompletionProposal.METHOD_REF, CompletionProposal.METHOD_IMPORT, true); collector.setAllowsRequiredProposals(CompletionProposal.CONSTRUCTOR_INVOCATION, CompletionProposal.TYPE_REF, true); collector.setAllowsRequiredProposals(CompletionProposal.ANONYMOUS_CLASS_CONSTRUCTOR_INVOCATION, CompletionProposal.TYPE_REF, true); collector.setAllowsRequiredProposals(CompletionProposal.ANONYMOUS_CLASS_DECLARATION, CompletionProposal.TYPE_REF, true); collector.setAllowsRequiredProposals(CompletionProposal.TYPE_REF, CompletionProposal.TYPE_REF, true); liveEditUnit.codeComplete(offset, collector, new NullProgressMonitor()); } } catch (JavaModelException e) { e.printStackTrace(); } List<JSONObject> jsonProposals = new ArrayList<JSONObject>(proposals.size()); CompletionContext completionContext = completionContextParam[0]; for (CompletionProposal proposal : proposals) { JSONObject jsonDescription = getDescription(proposal, completionContext); ProposalReplcamentInfo replacementInfo = new CompletionProposalReplacementProvider(liveEditUnit, proposal, completionContext, offset, prefix).createReplacement(); JSONObject jsonProposal = new JSONObject(); jsonProposal.put("description", jsonDescription); jsonProposal.put("proposal", replacementInfo.replacement); int initOffset = offset - prefix.length(); if (replacementInfo.extraChanges != null) { jsonProposal.put("additionalEdits", Utils.editsToJsonArray(replacementInfo.extraChanges)); initOffset += Utils.getOffsetAdjustment(replacementInfo.extraChanges, initOffset); } if (replacementInfo.positions != null && !replacementInfo.positions.isEmpty()) { jsonProposal.put("positions", getPositions(replacementInfo.positions, initOffset)); } jsonProposal.put("escapePosition", initOffset + replacementInfo.replacement.length()); jsonProposal.put("style", "attributedString"); jsonProposal.put("replace", true); jsonProposal.put("relevance", proposal.getRelevance()); jsonProposals.add(jsonProposal); } Collections.sort(jsonProposals, new Comparator<JSONObject>() { @Override public int compare(JSONObject o1, JSONObject o2) { try { int diff = o2.getInt("relevance") - o1.getInt("relevance"); if (diff == 0) { JSONArray nameDescription1 = o1.getJSONObject("description").getJSONArray("segments"); JSONArray nameDescription2 = o2.getJSONObject("description").getJSONArray("segments"); StringBuilder nameBuffer1 = new StringBuilder(); for (int i = 0; i < nameDescription1.length(); i++) { nameBuffer1.append(nameDescription1.getJSONObject(i).getString("value")); } StringBuilder nameBuffer2 = new StringBuilder(); for (int i = 0; i < nameDescription2.length(); i++) { nameBuffer2.append(nameDescription2.getJSONObject(i).getString("value")); } return nameBuffer1.toString().compareTo(nameBuffer2.toString()); } else { return diff; } } catch (JSONException e) { return -1; } } }); return new JSONArray(jsonProposals); }
From source file:org.eclipse.objectteams.otdt.internal.ui.assist.CompletionAdaptor.OverrideRoleCompletionProposal.java
License:Open Source License
public OverrideRoleCompletionProposal(ICompilationUnit cu, CompletionProposal proposal, int length, StyledString displayName, Image image) { super(String.valueOf(proposal.getCompletion()), cu, proposal.getReplaceStart(), length, image, displayName, proposal.getRelevance() * R_TYPE); fJavaProject = cu.getJavaProject(); fDisplayString = displayName;//from w w w . ja va2 s . c om fRoleName = String.valueOf(proposal.getName()); fModifiers = proposal.getFlags(); fReplaceStart = proposal.getReplaceStart(); setProposalInfo(new TypeProposalInfo(fJavaProject, proposal)); }
From source file:org.eclipse.objectteams.otdt.tests.model.CompletionTestsRequestor2.java
License:Open Source License
@SuppressWarnings("unchecked") public String getReversedResults() { if (this.proposalsPtr < 0) return ""; Arrays.sort(this.proposals, new Comparator() { public int compare(Object o1, Object o2) { if (o1 == o2) return 0; if (o1 == null) return 1; if (o2 == null) return -1; CompletionProposal p1 = (CompletionProposal) o1; CompletionProposal p2 = (CompletionProposal) o2; int relDif = p2.getRelevance() - p1.getRelevance(); if (relDif != 0) return relDif; String name1 = getElementName(p1); String name2 = getElementName(p2); return name1.compareTo(name2); }// www.ja v a 2s .c om }); return getResultsWithoutSorting(); }
From source file:org.eclipse.objectteams.otdt.tests.model.CompletionTestsRequestor2.java
License:Open Source License
protected StringBuffer printProposal(CompletionProposal proposal, int tab, StringBuffer buffer) { for (int i = 0; i < tab; i++) { buffer.append(" "); //$NON-NLS-1$ }//ww w . j a v a 2 s .c om buffer.append(getElementName(proposal)); buffer.append('['); switch (proposal.getKind()) { case CompletionProposal.ANONYMOUS_CLASS_DECLARATION: buffer.append("ANONYMOUS_CLASS_DECLARATION"); //$NON-NLS-1$ break; case CompletionProposal.FIELD_REF: buffer.append("FIELD_REF"); //$NON-NLS-1$ break; case CompletionProposal.FIELD_REF_WITH_CASTED_RECEIVER: buffer.append("FIELD_REF_WITH_CASTED_RECEIVER"); //$NON-NLS-1$ break; case CompletionProposal.KEYWORD: buffer.append("KEYWORD"); //$NON-NLS-1$ break; case CompletionProposal.LABEL_REF: buffer.append("LABEL_REF"); //$NON-NLS-1$ break; case CompletionProposal.LOCAL_VARIABLE_REF: buffer.append("LOCAL_VARIABLE_REF"); //$NON-NLS-1$ break; case CompletionProposal.METHOD_DECLARATION: buffer.append("METHOD_DECLARATION"); //$NON-NLS-1$ if (proposal.isConstructor()) { buffer.append("<CONSTRUCTOR>"); //$NON-NLS-1$ } break; case CompletionProposal.METHOD_REF: buffer.append("METHOD_REF"); //$NON-NLS-1$ if (proposal.isConstructor()) { buffer.append("<CONSTRUCTOR>"); //$NON-NLS-1$ } break; case CompletionProposal.METHOD_REF_WITH_CASTED_RECEIVER: buffer.append("METHOD_REF_WITH_CASTED_RECEIVER"); //$NON-NLS-1$ if (proposal.isConstructor()) { buffer.append("<CONSTRUCTOR>"); //$NON-NLS-1$ } break; case CompletionProposal.PACKAGE_REF: buffer.append("PACKAGE_REF"); //$NON-NLS-1$ break; case CompletionProposal.TYPE_REF: buffer.append("TYPE_REF"); //$NON-NLS-1$ break; case CompletionProposal.VARIABLE_DECLARATION: buffer.append("VARIABLE_DECLARATION"); //$NON-NLS-1$ break; case CompletionProposal.POTENTIAL_METHOD_DECLARATION: buffer.append("POTENTIAL_METHOD_DECLARATION"); //$NON-NLS-1$ break; case CompletionProposal.METHOD_NAME_REFERENCE: //{ObjectTeams: original "METHOD_IMPORT" is now misleading (used for rhs short method spec, too) buffer.append("METHOD_NAME_REF"); //$NON-NLS-1$ // SH} break; //{ObjectTeams: new kinds: case CompletionProposal.OT_METHOD_SPEC: buffer.append("METHOD_SPEC"); //$NON-NLS-1$ break; case CompletionProposal.OT_FIELD_SPEC: buffer.append("FIELD_SPEC"); //$NON-NLS-1$ break; case CompletionProposal.OT_CALLOUT_GET: buffer.append("CALLOUT_GET"); //$NON-NLS-1$ break; case CompletionProposal.OT_CALLOUT_SET: buffer.append("CALLOUT_SET"); //$NON-NLS-1$ break; case CompletionProposal.OT_CALLOUT_DECLARATION: buffer.append("CALLOUT_DECLARATION"); //$NON-NLS-1$ break; case CompletionProposal.OT_CALLOUT_OVERRIDE_DECLARATION: buffer.append("CALLOUT_OVERRIDE_DECLARATION"); //$NON-NLS-1$ break; case CompletionProposal.OT_CALLIN_DECLARATION: buffer.append("CALLIN_DECLARATION"); //$NON-NLS-1$ break; // SH} case CompletionProposal.ANNOTATION_ATTRIBUTE_REF: buffer.append("ANNOTATION_ATTRIBUTE_REF"); //$NON-NLS-1$ break; case CompletionProposal.JAVADOC_BLOCK_TAG: buffer.append("JAVADOC_BLOCK_TAG"); //$NON-NLS-1$ break; case CompletionProposal.JAVADOC_INLINE_TAG: buffer.append("JAVADOC_INLINE_TAG"); //$NON-NLS-1$ break; case CompletionProposal.JAVADOC_FIELD_REF: buffer.append("JAVADOC_FIELD_REF"); //$NON-NLS-1$ break; case CompletionProposal.JAVADOC_METHOD_REF: buffer.append("JAVADOC_METHOD_REF"); //$NON-NLS-1$ break; case CompletionProposal.JAVADOC_TYPE_REF: buffer.append("JAVADOC_TYPE_REF"); //$NON-NLS-1$ break; case CompletionProposal.JAVADOC_PARAM_REF: buffer.append("JAVADOC_PARAM_REF"); //$NON-NLS-1$ break; case CompletionProposal.JAVADOC_VALUE_REF: buffer.append("JAVADOC_VALUE_REF"); //$NON-NLS-1$ break; case CompletionProposal.FIELD_IMPORT: buffer.append("FIELD_IMPORT"); //$NON-NLS-1$ break; case CompletionProposal.METHOD_IMPORT: buffer.append("METHOD_IMPORT"); //$NON-NLS-1$ break; case CompletionProposal.TYPE_IMPORT: buffer.append("TYPE_IMPORT"); //$NON-NLS-1$ break; default: buffer.append("PROPOSAL"); //$NON-NLS-1$ break; } buffer.append("]{"); buffer.append(proposal.getCompletion() == null ? NULL_LITERAL : proposal.getCompletion()); buffer.append(", "); buffer.append( proposal.getDeclarationSignature() == null ? NULL_LITERAL : proposal.getDeclarationSignature()); buffer.append(", "); buffer.append(proposal.getSignature() == null ? NULL_LITERAL : proposal.getSignature()); char[] receiverSignature = proposal.getReceiverSignature(); if (receiverSignature != null) { buffer.append(", "); buffer.append(receiverSignature); } if (this.showUniqueKeys) { buffer.append(", "); buffer.append(proposal.getDeclarationKey() == null ? NULL_LITERAL : proposal.getDeclarationKey()); buffer.append(", "); buffer.append(proposal.getKey() == null ? NULL_LITERAL : proposal.getKey()); } buffer.append(", "); buffer.append(proposal.getName() == null ? NULL_LITERAL : proposal.getName()); if (this.showParameterNames) { char[][] parameterNames = proposal.findParameterNames(null); buffer.append(", "); if (parameterNames == null || parameterNames.length <= 0) { buffer.append(NULL_LITERAL); } else { buffer.append("("); for (int i = 0; i < parameterNames.length; i++) { if (i > 0) buffer.append(", "); buffer.append(parameterNames[i]); } buffer.append(")"); } } if (this.showPositions) { buffer.append(", "); if (this.showTokenPositions || receiverSignature != null) buffer.append("replace"); buffer.append("["); buffer.append(proposal.getReplaceStart()); buffer.append(", "); buffer.append(proposal.getReplaceEnd()); buffer.append("]"); } if (this.showTokenPositions) { buffer.append(", token["); buffer.append(proposal.getTokenStart()); buffer.append(", "); buffer.append(proposal.getTokenEnd()); buffer.append("]"); } if (this.showPositions && receiverSignature != null) { buffer.append(", receiver["); buffer.append(proposal.getReceiverStart()); buffer.append(", "); buffer.append(proposal.getReceiverEnd()); buffer.append("]"); } buffer.append(", "); buffer.append(proposal.getRelevance()); buffer.append('}'); if (this.showMissingTypes) { CompletionProposal[] requiredProposals = proposal.getRequiredProposals(); if (requiredProposals != null) { int length = requiredProposals.length; System.arraycopy(requiredProposals, 0, requiredProposals = new CompletionProposal[length], 0, length); quickSort(requiredProposals, 0, length - 1); for (int i = 0; i < length; i++) { buffer.append('\n'); printProposal(requiredProposals[i], tab + 1, buffer); } } } return buffer; }
From source file:org.eclipse.objectteams.otdt.tests.model.CompletionTestsRequestor2.java
License:Open Source License
protected int compare(CompletionProposal proposal1, CompletionProposal proposal2) { int relDif = proposal1.getRelevance() - proposal2.getRelevance(); if (relDif != 0) return relDif; String name1 = getElementName(proposal1); String name2 = getElementName(proposal2); int nameDif = name1.compareTo(name2); if (nameDif != 0) return nameDif; int kindDif = proposal1.getKind() - proposal2.getKind(); if (kindDif != 0) return kindDif; String completion1 = new String(proposal1.getCompletion()); String completion2 = new String(proposal2.getCompletion()); int completionDif = completion1.compareTo(completion2); if (completionDif != 0) return completionDif; char[] temp = proposal1.getSignature(); String signature1 = temp == null ? null : new String(temp); temp = proposal2.getSignature();//from www. j a va 2 s . c om String signature2 = temp == null ? null : new String(temp); int signatureDif = 0; if (signature1 != null && signature2 != null) { signatureDif = signature1.compareTo(signature2); } if (signatureDif != 0) return signatureDif; temp = proposal1.getDeclarationSignature(); String declarationSignature1 = temp == null ? null : new String(temp); temp = proposal2.getDeclarationSignature(); String declarationSignature2 = temp == null ? null : new String(temp); int declarationSignatureDif = 0; if (declarationSignature1 != null && declarationSignature2 != null) { declarationSignatureDif = declarationSignature1.compareTo(declarationSignature2); } if (declarationSignatureDif != 0) return declarationSignatureDif; return 0; }