Browse Source

Merge 421865acc7 into 0bfe222cf4

pull/3081/merge
Jan Kučera 4 days ago committed by GitHub
parent
commit
a39918179f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      ILSpy/TreeNodes/BaseTypesEntryNode.cs
  2. 3
      ILSpy/TreeNodes/BaseTypesTreeNode.cs
  3. 2
      ILSpy/TreeNodes/DerivedTypesEntryNode.cs
  4. 10
      ILSpy/TreeNodes/DerivedTypesTreeNode.cs

2
ILSpy/TreeNodes/BaseTypesEntryNode.cs

@ -59,7 +59,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -59,7 +59,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
public override void Decompile(Language language, ITextOutput output, DecompilationOptions options)
{
language.WriteCommentLine(output, language.TypeToString(type, includeNamespace: true));
language.DecompileType(type, output, options);
}
IEntity IMemberTreeNode.Member => type;

3
ILSpy/TreeNodes/BaseTypesTreeNode.cs

@ -71,7 +71,8 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -71,7 +71,8 @@ namespace ICSharpCode.ILSpy.TreeNodes
App.Current.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(EnsureLazyChildren));
foreach (ILSpyTreeNode child in this.Children)
{
child.Decompile(language, output, options);
if (child is IMemberTreeNode { Member: ITypeDefinition childType })
language.WriteCommentLine(output, language.TypeToString(childType, includeNamespace: true));
}
}
}

2
ILSpy/TreeNodes/DerivedTypesEntryNode.cs

@ -96,7 +96,7 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -96,7 +96,7 @@ namespace ICSharpCode.ILSpy.TreeNodes
public override void Decompile(Language language, ITextOutput output, DecompilationOptions options)
{
language.WriteCommentLine(output, language.TypeToString(type, includeNamespace: true));
language.DecompileType(type, output, options);
}
IEntity IMemberTreeNode.Member => type;

10
ILSpy/TreeNodes/DerivedTypesTreeNode.cs

@ -16,8 +16,10 @@ @@ -16,8 +16,10 @@
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
using System;
using System.Collections.Generic;
using System.Threading;
using System.Windows.Threading;
using ICSharpCode.Decompiler;
using ICSharpCode.Decompiler.TypeSystem;
@ -104,7 +106,13 @@ namespace ICSharpCode.ILSpy.TreeNodes @@ -104,7 +106,13 @@ namespace ICSharpCode.ILSpy.TreeNodes
public override void Decompile(Language language, ITextOutput output, DecompilationOptions options)
{
threading.Decompile(language, output, options, EnsureLazyChildren);
App.Current.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(EnsureLazyChildren));
for (int i = 0; i < Children.Count; i++)
{
// LazyChildren are async and will not be ready on first call, avoid foreach.
if (Children[i] is IMemberTreeNode { Member: ITypeDefinition childType })
language.WriteCommentLine(output, language.TypeToString(childType, includeNamespace: true));
}
}
}
}

Loading…
Cancel
Save