Browse Source

IModule should implement ISymbol.

pull/1213/head
Siegfried Pammer 7 years ago
parent
commit
195a1cf55b
  1. 2
      ICSharpCode.Decompiler/TypeSystem/IAssembly.cs
  2. 2
      ICSharpCode.Decompiler/TypeSystem/ISymbol.cs
  3. 2
      ICSharpCode.Decompiler/TypeSystem/Implementation/MinimalCorlib.cs
  4. 2
      ICSharpCode.Decompiler/TypeSystem/MetadataModule.cs

2
ICSharpCode.Decompiler/TypeSystem/IAssembly.cs

@ -45,7 +45,7 @@ namespace ICSharpCode.Decompiler.TypeSystem @@ -45,7 +45,7 @@ namespace ICSharpCode.Decompiler.TypeSystem
/// <summary>
/// Represents a metadata module.
/// </summary>
public interface IModule : ICompilationProvider
public interface IModule : ISymbol, ICompilationProvider
{
/// <summary>
/// Gets the underlying metadata file. May return null, if the IAssembly was not created from a PE file.

2
ICSharpCode.Decompiler/TypeSystem/ISymbol.cs

@ -21,6 +21,8 @@ namespace ICSharpCode.Decompiler.TypeSystem @@ -21,6 +21,8 @@ namespace ICSharpCode.Decompiler.TypeSystem
public enum SymbolKind : byte
{
None,
/// <seealso cref="IModule"/>
Module,
/// <seealso cref="ITypeDefinition"/>
TypeDefinition,
/// <seealso cref="IField"/>

2
ICSharpCode.Decompiler/TypeSystem/Implementation/MinimalCorlib.cs

@ -53,6 +53,8 @@ namespace ICSharpCode.Decompiler.TypeSystem.Implementation @@ -53,6 +53,8 @@ namespace ICSharpCode.Decompiler.TypeSystem.Implementation
string IModule.AssemblyName => "corlib";
string IModule.FullAssemblyName => "corlib";
string ISymbol.Name => "corlib";
SymbolKind ISymbol.SymbolKind => SymbolKind.Module;
Metadata.PEFile IModule.PEFile => null;
INamespace IModule.RootNamespace => rootNamespace;

2
ICSharpCode.Decompiler/TypeSystem/MetadataModule.cs

@ -92,6 +92,8 @@ namespace ICSharpCode.Decompiler.TypeSystem @@ -92,6 +92,8 @@ namespace ICSharpCode.Decompiler.TypeSystem
public string AssemblyName { get; }
public string FullAssemblyName { get; }
string ISymbol.Name => AssemblyName;
SymbolKind ISymbol.SymbolKind => SymbolKind.Module;
public INamespace RootNamespace => rootNamespace;

Loading…
Cancel
Save