mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
Follow up for 169666 (composite bindings), fix adaptBinding for static functions/variables
This commit is contained in:
parent
d692d9d650
commit
2e3f7eca0e
3 changed files with 10 additions and 9 deletions
|
@ -7,6 +7,7 @@
|
|||
*
|
||||
* Contributors:
|
||||
* Andrew Ferguson (Symbian) - Initial implementation
|
||||
* Markus Schorn (Wind River Systems)
|
||||
*******************************************************************************/
|
||||
package org.eclipse.cdt.internal.core.index.composite;
|
||||
|
||||
|
@ -57,7 +58,9 @@ public abstract class CompositeIndexBinding implements IIndexBinding {
|
|||
}
|
||||
|
||||
public Object getAdapter(Class adapter) {
|
||||
fail();
|
||||
if (adapter.isInstance(rbinding)) {
|
||||
return rbinding;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
|
@ -522,11 +522,9 @@ public class PDOM extends PlatformObject implements IIndexFragment, IPDOM {
|
|||
}
|
||||
|
||||
public IIndexFragmentBinding adaptBinding(IBinding binding) throws CoreException {
|
||||
if (binding instanceof PDOMBinding) {
|
||||
PDOMBinding pdomBinding= (PDOMBinding) binding;
|
||||
if (pdomBinding.getPDOM() == this) {
|
||||
return pdomBinding;
|
||||
}
|
||||
PDOMBinding pdomBinding= (PDOMBinding) binding.getAdapter(PDOMBinding.class);
|
||||
if (pdomBinding != null && pdomBinding.getPDOM() == this) {
|
||||
return pdomBinding;
|
||||
}
|
||||
|
||||
PDOMLinkage linkage= adaptLinkage(binding.getLinkage());
|
||||
|
|
|
@ -49,10 +49,10 @@ public abstract class PDOMBinding extends PDOMNamedNode implements IIndexFragmen
|
|||
}
|
||||
|
||||
public Object getAdapter(Class adapter) {
|
||||
if (adapter == PDOMBinding.class)
|
||||
if (adapter.isAssignableFrom(PDOMBinding.class))
|
||||
return this;
|
||||
else
|
||||
return null;
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Add table
Reference in a new issue