List of usage examples for org.eclipse.jdt.core.dom ASTParser createBindings
public IBinding[] createBindings(IJavaElement[] elements, IProgressMonitor monitor)
From source file:ch.uzh.ifi.seal.permo.lib.core.eclipse.AstUtil.java
License:Apache License
/** * Uses an {@link ASTParser} to create the {@link IMethodBinding} of the given {@link IMethod}. * // www .j a v a 2 s. c o m * Further info: http://wiki.eclipse.org/JDT/FAQ#From_an_IJavaElement_to_an_IBinding * * @param method * the {@link IMethod} * @return the create {@link IMethodBinding}. */ public static IMethodBinding createBinding(final IMethod method) { final ASTParser parser = ASTParser.newParser(AST.JLS8); parser.setProject(method.getJavaProject()); final IBinding[] bindings = parser.createBindings(new IJavaElement[] { method }, new NullProgressMonitor()); if (bindings.length > 0 && bindings[0] instanceof IMethodBinding) { return (IMethodBinding) bindings[0]; } return null; }
From source file:cideplus.ui.astview.ASTView.java
License:Open Source License
protected void performParseBindingFromElement() { InputDialog dialog = new InputDialog(getSite().getShell(), "Parse Binding from Java Element", "IJavaElement#getHandleIdentifier():", "", null); if (dialog.open() != Window.OK) return;/* w ww . j a v a 2 s .c o m*/ String handleIdentifier = dialog.getValue(); IJavaElement handle = JavaCore.create(handleIdentifier); Object viewerInput = fViewer.getInput(); ASTAttribute item; if (handle == null) { item = new Error(viewerInput, "handleIdentifier not resolved: " + handleIdentifier, null); } else if (!handle.exists()) { item = new Error(viewerInput, "element does not exist: " + handleIdentifier, null); } else if (handle.getJavaProject() == null) { item = new Error(viewerInput, "getJavaProject() is null: " + handleIdentifier, null); } else { IJavaProject project = handle.getJavaProject(); ASTParser parser = ASTParser.newParser(fCurrentASTLevel); parser.setProject(project); IBinding[] bindings = parser.createBindings(new IJavaElement[] { handle }, null); String name = handleIdentifier + ": " + Binding.getBindingLabel(bindings[0]); item = new Binding(viewerInput, name, bindings[0], true); } fViewer.add(viewerInput, item); fViewer.setSelection(new StructuredSelection(item), true); }
From source file:coloredide.astview.ASTView.java
License:Open Source License
protected void performCreateBindingFromElement() { InputDialog dialog = new InputDialog(getSite().getShell(), "Create Binding from Java Element", "IJavaElement#getHandleIdentifier():", "", null); if (dialog.open() != Window.OK) return;//from w ww .ja v a2 s . co m String handleIdentifier = dialog.getValue(); IJavaElement handle = JavaCore.create(handleIdentifier); Object viewerInput = fViewer.getInput(); ASTAttribute item; if (handle == null) { item = new Error(viewerInput, "handleIdentifier not resolved: " + handleIdentifier, null); } else if (!handle.exists()) { item = new Error(viewerInput, "element does not exist: " + handleIdentifier, null); } else if (handle.getJavaProject() == null) { item = new Error(viewerInput, "getJavaProject() is null: " + handleIdentifier, null); } else { IJavaProject project = handle.getJavaProject(); ASTParser parser = ASTParser.newParser(ColoredIDEPlugin.AST_VERSION); parser.setProject(project); IBinding[] bindings = parser.createBindings(new IJavaElement[] { handle }, null); item = new Binding(viewerInput, handleIdentifier, bindings[0], true); } fViewer.add(viewerInput, item); fViewer.setSelection(new StructuredSelection(item), true); }
From source file:com.google.gdt.eclipse.core.JavaASTUtils.java
License:Open Source License
public static ITypeBinding resolveType(IJavaProject javaProject, String qualifiedTypeName) throws JavaModelException { IType type = javaProject.findType(qualifiedTypeName); if (type == null || !type.exists()) { return null; }/*from ww w . j av a 2s .c o m*/ ASTParser parser = ASTParser.newParser(AST.JLS3); parser.setProject(javaProject); IBinding[] bindings = parser.createBindings(new IJavaElement[] { type }, null); if (bindings == null) { return null; } return (ITypeBinding) bindings[0]; }
From source file:org.eclipse.core.tools.nls.MessageBundleRefactoring.java
License:Open Source License
private ITypeBinding computeAccessorClassBinding(IProgressMonitor monitor) { ASTParser parser = ASTParser.newParser(AST.JLS3); parser.setProject(fAccessorClass.getJavaProject()); return (ITypeBinding) parser.createBindings(new IJavaElement[] { fAccessorClass }, monitor)[0]; }
From source file:org.eclipse.core.tools.search.FindUnusedMembers.java
License:Open Source License
private void doSearchCU(ICompilationUnit cu, IProgressMonitor monitor) throws CoreException { IType[] allTypes = cu.getAllTypes(); monitor.beginTask("Processing " + cu.getElementName(), allTypes.length + 1); //$NON-NLS-1$ try {/*ww w .j a v a 2s. c o m*/ ASTParser astParser = ASTParser.newParser(AST.JLS3); astParser.setResolveBindings(true); astParser.setProject(cu.getJavaProject()); IBinding[] bindings = astParser.createBindings(allTypes, new NullProgressMonitor()); for (int i = 0; i < bindings.length; i++) { if (monitor.isCanceled()) throw new OperationCanceledException(); ITypeBinding typeBinding = (ITypeBinding) bindings[i]; monitor.subTask("Processing '" + typeBinding.getQualifiedName() + "'"); //$NON-NLS-1$//$NON-NLS-2$ doSearchType(typeBinding, new NullProgressMonitor()); } } finally { monitor.done(); } }
From source file:org.eclipse.jpt.common.core.internal.utility.jdt.ASTTools.java
License:Open Source License
/** * Create an {@link IBinding} for the specified {@link IMember} * with its bindings resolved. May return null. *//* ww w. j ava 2s. c o m*/ public static IBinding createBinding(IMember member) { ASTParser parser = newParser(); parser.setProject(member.getJavaProject()); return parser.createBindings(new IJavaElement[] { member }, null)[0]; }
From source file:org.eclipse.xtext.common.types.access.jdt.JdtTypeProviderTest.java
License:Open Source License
@SuppressWarnings("deprecation") private boolean isParameterNamesAvailable() throws Exception { ASTParser parser = ASTParser.newParser(AST.JLS3); parser.setIgnoreMethodBodies(true);/* ww w. ja va 2 s .co m*/ IJavaProject javaProject = projectProvider.getJavaProject(resourceSet); parser.setProject(javaProject); IType type = javaProject.findType("org.eclipse.xtext.common.types.testSetups.TestEnum"); IBinding[] bindings = parser.createBindings(new IJavaElement[] { type }, null); ITypeBinding typeBinding = (ITypeBinding) bindings[0]; IMethodBinding[] methods = typeBinding.getDeclaredMethods(); for (IMethodBinding method : methods) { if (method.isConstructor()) { IMethod element = (IMethod) method.getJavaElement(); if (element.exists()) { String[] parameterNames = element.getParameterNames(); if (parameterNames.length == 1 && parameterNames[0].equals("string")) { return true; } } else { return false; } } } return false; }
From source file:org.eclipse.xtext.common.types.access.jdt.TypeURIHelper.java
License:Open Source License
public URI getFullURI(IJavaElement javaElement) { @SuppressWarnings("all") ASTParser parser = ASTParser.newParser(AST.JLS3); parser.setProject(javaElement.getJavaProject()); IBinding[] bindings = parser.createBindings(new IJavaElement[] { javaElement }, null); if (bindings[0] != null) { return getFullURI(bindings[0]); }//from www. j a va 2 s . c om return null; }
From source file:org.eclipselabs.nullness.FieldCache.java
License:Open Source License
private Boolean computeNonNullState(FieldSelector selector) { try {/*from w w w .ja v a 2s. co m*/ IType type = project.findType(selector.owner); if (type != null) { ASTParser parser = ASTParser.newParser(AST.JLS4); parser.setProject(project); parser.setIgnoreMethodBodies(false); IBinding[] bindings = parser.createBindings(new IJavaElement[] { type }, null); if (bindings[0] != null) { ITypeBinding typeBinding = (ITypeBinding) bindings[0]; return computeNonNullState(typeBinding, selector.name); } } return null; } catch (Exception e) { return Boolean.FALSE; } }