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

15
ILSpy/MainWindow.xaml.cs

@ -583,7 +583,20 @@ namespace ICSharpCode.ILSpy @@ -583,7 +583,20 @@ namespace ICSharpCode.ILSpy
case Resource res:
return assemblyListTreeNode.FindResourceNode(res);
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:
return null;
}

Loading…
Cancel
Save