Browse Source

Add support for simple entities in navigation.

pull/1198/head
Siegfried Pammer 7 years ago
parent
commit
d86e336749
  1. 2
      ICSharpCode.Decompiler/Metadata/MetadataResolver.cs
  2. 15
      ILSpy/MainWindow.xaml.cs

2
ICSharpCode.Decompiler/Metadata/MetadataResolver.cs

@ -60,6 +60,8 @@ namespace ICSharpCode.Decompiler.Metadata
public static MethodDefinition ResolveMember(EntityHandle handle, IMetadataResolveContext context) public static MethodDefinition ResolveMember(EntityHandle handle, IMetadataResolveContext context)
{ {
switch (handle.Kind) { switch (handle.Kind) {
case HandleKind.MethodDefinition:
return new MethodDefinition(context.CurrentModule, (MethodDefinitionHandle)handle);
case HandleKind.MemberReference: case HandleKind.MemberReference:
break; break;
} }

15
ILSpy/MainWindow.xaml.cs

@ -583,7 +583,20 @@ namespace ICSharpCode.ILSpy
case Resource res: case Resource res:
return assemblyListTreeNode.FindResourceNode(res); return assemblyListTreeNode.FindResourceNode(res);
case IMetadataEntity entity: case IMetadataEntity entity:
throw new NotImplementedException(); switch (entity) {
case TypeDefinition td:
return assemblyListTreeNode.FindTypeNode(td);
case FieldDefinition fd:
return assemblyListTreeNode.FindFieldNode(fd);
case MethodDefinition md:
return assemblyListTreeNode.FindMethodNode(md);
case PropertyDefinition pd:
return assemblyListTreeNode.FindPropertyNode(pd);
case EventDefinition ed:
return assemblyListTreeNode.FindEventNode(ed);
default:
throw new NotSupportedException();
}
default: default:
return null; return null;
} }

Loading…
Cancel
Save