|
|
@ -524,10 +524,23 @@ namespace ICSharpCode.Decompiler.CSharp |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void CollectSecurityDeclarations(ISecurityDeclarationProvider provider) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
if (!provider.HasSecurityDeclarations) return; |
|
|
|
|
|
|
|
foreach (var sd in provider.SecurityDeclarations) { |
|
|
|
|
|
|
|
foreach (var sa in sd.SecurityAttributes) { |
|
|
|
|
|
|
|
CollectNamespacesForDecompilation(sa.AttributeType, namespaces, visited); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
foreach (var def in memberDefinitions) { |
|
|
|
foreach (var def in memberDefinitions) { |
|
|
|
if (def is ICustomAttributeProvider cap) { |
|
|
|
if (def is ICustomAttributeProvider cap) { |
|
|
|
CollectAttributes(cap); |
|
|
|
CollectAttributes(cap); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if (def is ISecurityDeclarationProvider sdp) { |
|
|
|
|
|
|
|
CollectSecurityDeclarations(sdp); |
|
|
|
|
|
|
|
} |
|
|
|
switch (def) { |
|
|
|
switch (def) { |
|
|
|
case TypeDefinition typeDef: |
|
|
|
case TypeDefinition typeDef: |
|
|
|
if (typeDef.IsNested) { |
|
|
|
if (typeDef.IsNested) { |
|
|
|