Community
Participate
Working Groups
From CDT 2.0 GA 1. Insert the following code: template < class T> class MyTemplateClass // line A { public: T* _head; // line B T* myHead(); // line C }; template < class T> T* MyTemplateClass<T>::myHead() { return _head; } 2. Search for all element declarations named '*'. There are three declarations (lines A, B and C), and B and C are nested within their parent A'. Great. Unfortunately, there is no icon for A' in the search results, and the following error is in the Error Log: !ENTRY org.eclipse.core.runtime 4 2 Jul 15, 2004 09:36:13.828 !MESSAGE Problems occurred when invoking code from plug- in: "org.eclipse.core.runtime". !STACK 0 org.eclipse.jface.util.Assert$AssertionFailedException: null argument; at org.eclipse.jface.util.Assert.isNotNull(Assert.java:139) at org.eclipse.jface.util.Assert.isNotNull(Assert.java:116) at org.eclipse.cdt.ui.CElementImageDescriptor.<init> (CElementImageDescriptor.java:75) at org.eclipse.cdt.ui.CSearchResultLabelProvider.getImage (CSearchResultLabelProvider.java:128) at org.eclipse.jface.viewers.TreeViewer.doUpdateItem (TreeViewer.java:117) at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run (AbstractTreeViewer.java:83) at org.eclipse.core.internal.runtime.InternalPlatform.run (InternalPlatform.java:615) at org.eclipse.core.runtime.Platform.run(Platform.java:747) at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem (AbstractTreeViewer.java:464) at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run (StructuredViewer.java:128) at org.eclipse.core.internal.runtime.InternalPlatform.run (InternalPlatform.java:615) at org.eclipse.core.runtime.Platform.run(Platform.java:747) at org.eclipse.jface.viewers.StructuredViewer.updateItem (StructuredViewer.java:1374) at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem (AbstractTreeViewer.java:381) at org.eclipse.jface.viewers.AbstractTreeViewer$1.run (AbstractTreeViewer.java:361) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren (AbstractTreeViewer.java:342) at org.eclipse.jface.viewers.AbstractTreeViewer.handleTreeExpand (AbstractTreeViewer.java:754) at org.eclipse.jface.viewers.AbstractTreeViewer$4.treeExpanded (AbstractTreeViewer.java:765) at org.eclipse.swt.widgets.TypedListener.handleEvent (TypedListener.java:179) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:796) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:820) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:805) at org.eclipse.swt.widgets.Tree.wmNotifyChild(Tree.java:2074) at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:4002) at org.eclipse.swt.widgets.Composite.WM_NOTIFY(Composite.java:722) at org.eclipse.swt.widgets.Control.windowProc(Control.java:3019) at org.eclipse.swt.widgets.Display.windowProc(Display.java:3338) at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method) at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:1391) at org.eclipse.swt.widgets.Tree.callWindowProc(Tree.java:170) at org.eclipse.swt.widgets.Tree.WM_LBUTTONDOWN(Tree.java:1668) at org.eclipse.swt.widgets.Control.windowProc(Control.java:3001) at org.eclipse.swt.widgets.Display.windowProc(Display.java:3338) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1467) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2429) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1377) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1348) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench (Workbench.java:254) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:141) at org.eclipse.ui.internal.ide.IDEApplication.run (IDEApplication.java:96) at org.eclipse.core.internal.runtime.PlatformActivator$1.run (PlatformActivator.java:335) at org.eclipse.core.runtime.adaptor.EclipseStarter.run (EclipseStarter.java:273) at org.eclipse.core.runtime.adaptor.EclipseStarter.run (EclipseStarter.java:129) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.eclipse.core.launcher.Main.basicRun(Main.java:183) at org.eclipse.core.launcher.Main.run(Main.java:644) at org.eclipse.core.launcher.Main.main(Main.java:628)
Bog, do your best to avoid these exceptions, but do not do any work on trying to make Search officially _work_ for templates, its not in our mandate yet.
Although we don't officially support template search, I've added some code to provide an icon for the fluke cases where we find an item. - BG