当前位置: 首页>>代码示例>>Java>>正文


Java CompletionRequestor类代码示例

本文整理汇总了Java中org.eclipse.jdt.core.CompletionRequestor的典型用法代码示例。如果您正苦于以下问题:Java CompletionRequestor类的具体用法?Java CompletionRequestor怎么用?Java CompletionRequestor使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


CompletionRequestor类属于org.eclipse.jdt.core包,在下文中一共展示了CompletionRequestor类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: Autocomplete

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
private List<AutocompleteResponse.Completion> Autocomplete(ITypeRoot cu, int cursorPosition) throws JavaModelException 
{
	final List<AutocompleteResponse.Completion> proposals = new ArrayList<AutocompleteResponse.Completion>();
	cu.codeComplete(cursorPosition, new CompletionRequestor()
	{
		@Override
		public void accept(CompletionProposal proposal) {
			try
			{
				System.out.println(proposal.toString());
				proposals.add(translateToCompletion(proposal));
			}
			catch(Exception e)
			{
				e.printStackTrace();
			}
		}
	});		
	return proposals;
}
 
开发者ID:Microsoft,项目名称:vsminecraft,代码行数:21,代码来源:JavaParser.java

示例2: ParamHelp

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
private List<ParamHelpResponse.Signature> ParamHelp(ITypeRoot cu, int cursorPosition) throws JavaModelException 
{
	final List<ParamHelpResponse.Signature> proposals = new ArrayList<ParamHelpResponse.Signature>();
	cu.codeComplete(cursorPosition, new CompletionRequestor()
	{
		@Override
		public void accept(CompletionProposal proposal) 
		{
			try
			{
				System.out.println(proposal.toString());
				if (proposal.getKind() == CompletionProposal.METHOD_REF)
				{
					char[] javaSig = proposal.getSignature();
					
					ParamHelpResponse.Signature.Builder sig = ParamHelpResponse.Signature.newBuilder()
							.setName(new String(proposal.getName()))
							.setReturnValue(new String(Signature.toCharArray(Signature.getReturnType(javaSig))));
					
					char[][] javaParamTypes = Signature.getParameterTypes(javaSig);
					for(char[] javaParamType: javaParamTypes)
					{
						sig.addParameters(ParamHelpResponse.Parameter.newBuilder()
								.setName(new String(Signature.toCharArray(javaParamType)))
								.build());
					}						
					proposals.add(sig.build());
				}
			}
			catch(Exception e)
			{
				e.printStackTrace();
			}
		}
	});		
	return proposals;
}
 
开发者ID:Microsoft,项目名称:vsminecraft,代码行数:38,代码来源:JavaParser.java

示例3: CompletionEngine

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
/**
 * The CompletionEngine is responsible for computing source completions.
 *
 * It requires a searchable name environment, which supports some
 * specific search APIs, and a requestor to feed back the results to a UI.
 *
 *  @param nameEnvironment org.eclipse.jdt.internal.codeassist.ISearchableNameEnvironment
 *      used to resolve type/package references and search for types/packages
 *      based on partial names.
 *
 *  @param requestor org.eclipse.jdt.internal.codeassist.ICompletionRequestor
 *      since the engine might produce answers of various forms, the engine
 *      is associated with a requestor able to accept all possible completions.
 *
 *  @param settings java.util.Map
 *		set of options used to configure the code assist engine.
 */
public CompletionEngine(
		SearchableEnvironment nameEnvironment,
		CompletionRequestor requestor,
		Map settings,
		IJavaProject javaProject,
		WorkingCopyOwner owner,
		IProgressMonitor monitor) {
	super(settings);
	this.javaProject = javaProject;
	this.requestor = requestor;
	this.nameEnvironment = nameEnvironment;
	this.typeCache = new HashtableOfObject(5);
	this.openedBinaryTypes = 0;
	this.sourceLevel = javaProject.getOption(JavaCore.COMPILER_SOURCE, true);
	this.complianceLevel = javaProject.getOption(JavaCore.COMPILER_COMPLIANCE, true);

	this.problemFactory = new CompletionProblemFactory(Locale.getDefault());
	this.problemReporter = new ProblemReporter(
			DefaultErrorHandlingPolicies.proceedWithAllProblems(),
			this.compilerOptions,
			this.problemFactory);
	this.lookupEnvironment =
		new LookupEnvironment(this, this.compilerOptions, this.problemReporter, nameEnvironment);
	this.parser =
		new CompletionParser(this.problemReporter, this.requestor.isExtendedContextRequired(), monitor);
	this.owner = owner;
	this.monitor = monitor;
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:46,代码来源:CompletionEngine.java

示例4: CompletionEngine

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
/**
 * The CompletionEngine is responsible for computing source completions.
 *
 * It requires a searchable name environment, which supports some
 * specific search APIs, and a requestor to feed back the results to a UI.
 *
 *  @param nameEnvironment org.eclipse.jdt.internal.codeassist.ISearchableNameEnvironment
 *      used to resolve type/package references and search for types/packages
 *      based on partial names.
 *
 *  @param requestor org.eclipse.jdt.internal.codeassist.ICompletionRequestor
 *      since the engine might produce answers of various forms, the engine
 *      is associated with a requestor able to accept all possible completions.
 *
 *  @param settings java.util.Map
 *		set of options used to configure the code assist engine.
 */
public CompletionEngine(
		SearchableEnvironment nameEnvironment,
		CompletionRequestor requestor,
		Map settings,
		IJavaProject javaProject,
		WorkingCopyOwner owner,
		IProgressMonitor monitor) {
	super(settings);
	this.javaProject = javaProject;
	this.requestor = requestor;
	this.nameEnvironment = nameEnvironment;
	this.typeCache = new HashtableOfObject(5);
	this.openedBinaryTypes = 0;
	this.sourceLevel = javaProject.getOption(JavaCore.COMPILER_SOURCE, true);
	this.complianceLevel = javaProject.getOption(JavaCore.COMPILER_COMPLIANCE, true);

	this.problemFactory = new CompletionProblemFactory(Locale.getDefault());
	this.problemReporter = new ProblemReporter(
			DefaultErrorHandlingPolicies.proceedWithAllProblems(),
			this.compilerOptions,
			this.problemFactory);
	this.lookupEnvironment =
		new LookupEnvironment(this, this.compilerOptions, this.problemReporter, nameEnvironment);
	this.parser =
		new CompletionParser(this.problemReporter, this.requestor.isExtendedContextRequired());
	this.owner = owner;
	this.monitor = monitor;
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion-Juno38,代码行数:46,代码来源:CompletionEngine.java

示例5: getStaticImportFavorites

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
public static String[] getStaticImportFavorites(ICompilationUnit cu, final String elementName, boolean isMethod, String[] favorites) throws JavaModelException {
	StringBuffer dummyCU= new StringBuffer();
	String packName= cu.getParent().getElementName();
	IType type= cu.findPrimaryType();
	if (type == null) {
		return new String[0];
	}

	if (packName.length() > 0) {
		dummyCU.append("package ").append(packName).append(';'); //$NON-NLS-1$
	}
	dummyCU.append("public class ").append(type.getElementName()).append("{\n static {\n").append(elementName); // static initializer  //$NON-NLS-1$//$NON-NLS-2$
	int offset= dummyCU.length();
	dummyCU.append("\n}\n }"); //$NON-NLS-1$

	ICompilationUnit newCU= null;
	try {
		newCU= cu.getWorkingCopy(null);
		newCU.getBuffer().setContents(dummyCU.toString());

		final HashSet<String> result= new HashSet<>();

		CompletionRequestor requestor= new CompletionRequestor(true) {
			@Override
			public void accept(CompletionProposal proposal) {
				if (elementName.equals(new String(proposal.getName()))) {
					CompletionProposal[] requiredProposals= proposal.getRequiredProposals();
					for (int i= 0; i < requiredProposals.length; i++) {
						CompletionProposal curr= requiredProposals[i];
						if (curr.getKind() == CompletionProposal.METHOD_IMPORT || curr.getKind() == CompletionProposal.FIELD_IMPORT) {
							result.add(JavaModelUtil.concatenateName(Signature.toCharArray(curr.getDeclarationSignature()), curr.getName()));
						}
					}
				}
			}
		};

		if (isMethod) {
			requestor.setIgnored(CompletionProposal.METHOD_REF, false);
			requestor.setAllowsRequiredProposals(CompletionProposal.METHOD_REF, CompletionProposal.METHOD_IMPORT, true);
		} else {
			requestor.setIgnored(CompletionProposal.FIELD_REF, false);
			requestor.setAllowsRequiredProposals(CompletionProposal.FIELD_REF, CompletionProposal.FIELD_IMPORT, true);
		}
		requestor.setFavoriteReferences(favorites);

		newCU.codeComplete(offset, requestor);

		return result.toArray(new String[result.size()]);
	} finally {
		if (newCU != null) {
			newCU.discardWorkingCopy();
		}
	}
}
 
开发者ID:eclipse,项目名称:eclipse.jdt.ls,代码行数:56,代码来源:SimilarElementsRequestor.java

示例6: codeComplete

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
@Override
public void codeComplete(char[] snippet, int insertion, int position, char[][] localVariableTypeNames, char[][] localVariableNames, int[] localVariableModifiers, boolean isStatic, CompletionRequestor requestor) throws JavaModelException {
	// TODO Auto-generated method stub

}
 
开发者ID:ioanaverebi,项目名称:Sparrow,代码行数:6,代码来源:PrimitiveTypeHack.java

示例7: getStaticImportFavorites

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
public static String[] getStaticImportFavorites(
    ICompilationUnit cu, final String elementName, boolean isMethod, String[] favorites)
    throws JavaModelException {
  StringBuffer dummyCU = new StringBuffer();
  String packName = cu.getParent().getElementName();
  IType type = cu.findPrimaryType();
  if (type == null) return new String[0];

  if (packName.length() > 0) {
    dummyCU.append("package ").append(packName).append(';'); // $NON-NLS-1$
  }
  dummyCU
      .append("public class ")
      .append(type.getElementName())
      .append("{\n static {\n")
      .append(elementName); // static initializer  //$NON-NLS-1$//$NON-NLS-2$
  int offset = dummyCU.length();
  dummyCU.append("\n}\n }"); // $NON-NLS-1$

  ICompilationUnit newCU = null;
  try {
    newCU = cu.getWorkingCopy(null);
    newCU.getBuffer().setContents(dummyCU.toString());

    final HashSet<String> result = new HashSet<String>();

    CompletionRequestor requestor =
        new CompletionRequestor(true) {
          @Override
          public void accept(CompletionProposal proposal) {
            if (elementName.equals(new String(proposal.getName()))) {
              CompletionProposal[] requiredProposals = proposal.getRequiredProposals();
              for (int i = 0; i < requiredProposals.length; i++) {
                CompletionProposal curr = requiredProposals[i];
                if (curr.getKind() == CompletionProposal.METHOD_IMPORT
                    || curr.getKind() == CompletionProposal.FIELD_IMPORT) {
                  result.add(
                      JavaModelUtil.concatenateName(
                          Signature.toCharArray(curr.getDeclarationSignature()), curr.getName()));
                }
              }
            }
          }
        };

    if (isMethod) {
      requestor.setIgnored(CompletionProposal.METHOD_REF, false);
      requestor.setAllowsRequiredProposals(
          CompletionProposal.METHOD_REF, CompletionProposal.METHOD_IMPORT, true);
    } else {
      requestor.setIgnored(CompletionProposal.FIELD_REF, false);
      requestor.setAllowsRequiredProposals(
          CompletionProposal.FIELD_REF, CompletionProposal.FIELD_IMPORT, true);
    }
    requestor.setFavoriteReferences(favorites);

    newCU.codeComplete(offset, requestor);

    return result.toArray(new String[result.size()]);
  } finally {
    if (newCU != null) {
      newCU.discardWorkingCopy();
    }
  }
}
 
开发者ID:eclipse,项目名称:che,代码行数:66,代码来源:SimilarElementsRequestor.java

示例8: codeComplete

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
/**
 * {@inheritDoc}
 */
@Override
public void codeComplete(final int offset, final CompletionRequestor requestor) throws JavaModelException {
  compilationUnit.codeComplete(offset, requestor);
}
 
开发者ID:sealuzh,项目名称:PerformanceHat,代码行数:8,代码来源:AbstractCompilationUnitDecorator.java

示例9: getStaticImportFavorites

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
public static String[] getStaticImportFavorites(ICompilationUnit cu, final String elementName, boolean isMethod, String[] favorites) throws JavaModelException {
	StringBuffer dummyCU= new StringBuffer();
	String packName= cu.getParent().getElementName();
	IType type= cu.findPrimaryType();
	if (type == null)
		return new String[0];
	
	if (packName.length() > 0) {
		dummyCU.append("package ").append(packName).append(';'); //$NON-NLS-1$
	}		
	dummyCU.append("public class ").append(type.getElementName()).append("{\n static {\n").append(elementName); // static initializer  //$NON-NLS-1$//$NON-NLS-2$
	int offset= dummyCU.length();
	dummyCU.append("\n}\n }"); //$NON-NLS-1$
	
	ICompilationUnit newCU= null;
	try {
		newCU= cu.getWorkingCopy(null);
		newCU.getBuffer().setContents(dummyCU.toString());
		
		final HashSet<String> result= new HashSet<String>();
		
		CompletionRequestor requestor= new CompletionRequestor(true) {
			@Override
			public void accept(CompletionProposal proposal) {
				if (elementName.equals(new String(proposal.getName()))) {
					CompletionProposal[] requiredProposals= proposal.getRequiredProposals();
					for (int i= 0; i < requiredProposals.length; i++) {
						CompletionProposal curr= requiredProposals[i];
						if (curr.getKind() == CompletionProposal.METHOD_IMPORT || curr.getKind() == CompletionProposal.FIELD_IMPORT) {
							result.add(JavaModelUtil.concatenateName(Signature.toCharArray(curr.getDeclarationSignature()), curr.getName()));
						}
					}
				}
			}
		};
		
		if (isMethod) {
			requestor.setIgnored(CompletionProposal.METHOD_REF, false);
			requestor.setAllowsRequiredProposals(CompletionProposal.METHOD_REF, CompletionProposal.METHOD_IMPORT, true);
		} else {
			requestor.setIgnored(CompletionProposal.FIELD_REF, false);
			requestor.setAllowsRequiredProposals(CompletionProposal.FIELD_REF, CompletionProposal.FIELD_IMPORT, true);
		}
		requestor.setFavoriteReferences(favorites);
		
		newCU.codeComplete(offset, requestor);
		
		return result.toArray(new String[result.size()]);
	} finally {
		if (newCU != null) {
			newCU.discardWorkingCopy();
		}	
	}	
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:55,代码来源:SimilarElementsRequestor.java

示例10: codeCompletion

import org.eclipse.jdt.core.CompletionRequestor; //导入依赖的package包/类
public void codeCompletion(String packageName, String fileName, int offset, CompletionRequestor requestor) throws JavaModelException {
	ICompilationUnit compilationUnit = getCompilationUnit(packageName, fileName);
	compilationUnit.codeComplete(offset, requestor);
}
 
开发者ID:chrrasmussen,项目名称:NTNU-Master-Project,代码行数:5,代码来源:WorkspaceManager.java


注:本文中的org.eclipse.jdt.core.CompletionRequestor类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。