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
return element.getDeclaringType().isClass();
	}
	
	private static boolean isInterfaceField(IMember element) throws JavaModelException {
		
		if (element.getElementType() == IJavaElement.FIELD) {
			return element.getDeclaringType().isInterface();
		}
		return false;
	}	
	
	private static boolean confirmSynchronized(IJavaElement member) {
		
		return member.getElementType() != IJavaElement.TYPE;
	}
	
	public static ImageDescriptor getMethodImageDescriptor(boolean isInInterface, int flags) {
		if (Flags.isPublic(flags) || isInInterface)
			return JavaPluginImages.DESC_MISC_PUBLIC;
		if (Flags.isProtected(flags))
			return JavaPluginImages.DESC_MISC_PROTECTED;
		if (Flags.isPrivate(flags))
			return JavaPluginImages.DESC_MISC_PRIVATE;
		
		return JavaPluginImages.DESC_MISC_DEFAULT;
	}
		
	public static ImageDescriptor getFieldImageDescriptor(boolean isInInterface, int flags) {
		if (Flags.isPublic(flags) || isInInterface)
			return JavaPluginImages.DESC_FIELD_PUBLIC;