public ArraysInformation(ClrDumpType arrayType, ulong nbInstances, ulong totalLength, ulong maxLength, ulong totalSize) : this(arrayType) { NbInstances = nbInstances; TotalLength = totalLength; MaxLength = maxLength; TotalSize = totalSize; }
public void Setup(ClrDumpType dumpType) { type = dumpType.ClrType; ClrDump = dumpType.ClrDump; pgTypeInfo.SelectedObject = new TypeInformations(dumpType); dlvFields.InitColumns <FieldInformation>(); dlvFields.SetUpTypeColumn <FieldInformation>(this); dlvFields.SetObjects(dumpType.Fields.Select(clrField => new FieldInformation(dumpType, clrField))); dlvMethods.InitColumns <MethodInformation>(); dlvMethods.SetUpTypeColumn <MethodInformation>(this); dlvMethods.SetObjects(dumpType.Methods.Select(clrMethod => new MethodInformation(dumpType, clrMethod))); dtlvParentClasses.InitData <AbstractTypeInformation>(); dtlvParentClasses.SetUpTypeColumn <AbstractTypeInformation>(this); var l = new List <object>(); var typeInformation = new TypeInformation(dumpType.BaseType); var interfaceInformations = InterfaceInformation.GetInterfaces(dumpType); l.Add(typeInformation); l.AddRange(interfaceInformations); dtlvParentClasses.Roots = l; }
public void Setup(ClrDumpType clrDumpType) { this.clrDumpType = clrDumpType; ClrDump = clrDumpType.ClrDump; Icon = Properties.Resources.attributes_display_small; Name = $"#{ClrDump.Id} - Delegates - {clrDumpType.TypeName}"; dlvDelegateInstances.InitColumns <DelegateInstanceInformation>(); dlvDelegateInstances.SetUpAddressColumn <DelegateInstanceInformation>(this); dlvDelegateInstances.SetUpTypeColumn <DelegateInstanceInformation>(this); }
public static void Create(ClrDumpType clrDumpType, UIModule parent, Action <InstancesModule> postInit) { if (clrDumpType == null) { MessageBox.Show("No type selected !", "Error", MessageBoxButtons.OK); return; } UIModuleFactory.CreateModule <TypeInstancesModule>( mod => { mod.UIModuleParent = parent; mod.Setup(clrDumpType); }, mod => postInit(mod) ); }
public DelegateTargetInformation(ulong address, ClrDumpType clrDumpType, ClrMethod methInfo) : this(address, clrDumpType) => this.methInfo = methInfo;
public DelegateTargetInformation(ulong address, ClrDumpType clrDumpType) { Address = address; ClrDumpType = clrDumpType; }
public static bool IsDelegateType(ClrDumpType clrDumpType) { var delegateType = clrDumpType.ClrDump.GetClrType(typeof(MulticastDelegate).FullName); return(clrDumpType.BaseType != null && clrDumpType.BaseType.ClrType == delegateType); }
internal static List <DelegateInstanceInformation> GetDelegateInstanceInformation(ClrDumpType clrDumpType) { var clrType = clrDumpType.ClrType; var delegateInstanceInformations = new List <DelegateInstanceInformation>(); var targetField = clrType.GetFieldByName(TargetFieldName); var invocCountField = clrType.GetFieldByName(InvocationCountFieldName); foreach (var address in clrDumpType.EnumerateInstances()) { var targets = CountTargets(address, clrType, targetField, invocCountField); var delegateInstanceInformation = new DelegateInstanceInformation(address, clrDumpType, targets); delegateInstanceInformations.Add(delegateInstanceInformation); } return(delegateInstanceInformations); }
public TypeInformations(ClrDumpType dumpType) => this.dumpType = dumpType;
public ArraysInformation(ClrDumpType arrayType) { ClrDumpType = arrayType; TypeName = arrayType.ClrType.Name; }
public TypeInformation(ClrDumpType clrDumpType) { ClrDumpType = clrDumpType; TypeName = TypeHelpers.ManageAlias(ClrDumpType.TypeName); }
public DelegateInstanceInformation(ulong address, ClrDumpType clrDumpType, long targetCount) { Address = address; ClrDumpType = clrDumpType; Targets = targetCount; }
public ArraysAddressList(ClrDumpType clrDumpType) : base(clrDumpType.ClrDump, clrDumpType.ClrType, clrDumpType.Instances) { }
public MethodInformation(ClrDumpType dumpType, ClrMethod clrMethod) { this.dumpType = dumpType; this.clrMethod = clrMethod; }
public FieldInformation(ClrDumpType dumpType, ClrInstanceField clrField) { this.dumpType = dumpType; this.clrField = clrField; }
public static List <InterfaceInformation> GetInterfaces(ClrDumpType clrDumpType) { var clrInterfaces = clrDumpType.Interfaces; return(clrInterfaces.Select(interf => new InterfaceInformation(clrDumpType.ClrDump, interf)).ToList()); }
internal void Setup(ClrDumpType clrDumpType) { addressList = new TypeInstancesAddressList(clrDumpType); Setup(addressList); }