Bug 38237 [api] Code Assist images
Code Assist proposals are reflected as an Image and Text. The images that are used in the JDT proposals are generated by org.eclipse.jdt.internal.ui.text.java.ResultCollector. Though it makes use of the JavaElementImageProvider.getFieldImageDescriptor() to get the proper image for a particular IJavaElement, it does perform additional consideration for elements like static, deprecated, Local variable etc. We are interested to contribute to code assist by way of reusing the images (and semantics) that are in use by the (internal) ResultCollector.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/viewsupport/JavaElementImageProvider.java
* Returns an image descriptor for a IAdaptable. The descriptor includes overlays, if specified (only error ticks apply).
	 * Returns <code>null</code> if no image could be found.
	 */	
	public ImageDescriptor getWorkbenchImageDescriptor(IAdaptable adaptable, int flags) {
		IWorkbenchAdapter wbAdapter= (IWorkbenchAdapter) adaptable.getAdapter(IWorkbenchAdapter.class);
		if (wbAdapter == null) {
			return null;
		}
		ImageDescriptor descriptor= wbAdapter.getImageDescriptor(adaptable);
		if (descriptor == null) {
			return null;
		}
		Point size= useSmallSize(flags) ? SMALL_SIZE : BIG_SIZE;
		return new JavaElementImageDescriptor(descriptor, 0, size);
	}
	
	
	
	/**
	 * Returns an image descriptor for a java element. This is the base image, no overlays.
	 */
	public ImageDescriptor getBaseImageDescriptor(IJavaElement element, int renderFlags) {
		try {			
			switch (element.getElementType()) {	
				case IJavaElement.INITIALIZER:
					return JavaPluginImages.DESC_MISC_PRIVATE; 
				case IJavaElement.METHOD:
					IMember member= (IMember) element;
					return getMethodImageDescriptor(member.getDeclaringType().isInterface(), member.getFlags());