static MethodExportInfoOptions ToMethodExportInfoOptions(VTableFlags flags) { var res = MethodExportInfoOptions.None; if ((flags & VTableFlags.FromUnmanaged) != 0) { res |= MethodExportInfoOptions.FromUnmanaged; } if ((flags & VTableFlags.FromUnmanagedRetainAppDomain) != 0) { res |= MethodExportInfoOptions.FromUnmanagedRetainAppDomain; } if ((flags & VTableFlags.CallMostDerived) != 0) { res |= MethodExportInfoOptions.CallMostDerived; } return(res); }
/// <summary> /// Constructor /// </summary> /// <param name="rva">RVA of this vtable</param> /// <param name="flags">Flgas</param> /// <param name="numSlots">Number of methods in vtable</param> public VTable(RVA rva, VTableFlags flags, int numSlots) { RVA = rva; Flags = flags; Methods = ThreadSafeListCreator.Create <IMethod>(numSlots); }
/// <summary> /// Constructor /// </summary> /// <param name="rva">RVA of this vtable</param> /// <param name="flags">Flgas</param> /// <param name="methods">Vtable methods</param> public VTable(RVA rva, VTableFlags flags, ThreadSafe.IEnumerable <IMethod> methods) { RVA = rva; Flags = flags; Methods = ThreadSafeListCreator.Create(methods); }
/// <summary> /// Constructor /// </summary> /// <param name="rva">RVA of this vtable</param> /// <param name="flags">Flgas</param> /// <param name="methods">Vtable methods</param> public VTable(RVA rva, VTableFlags flags, IEnumerable <IMethod> methods) { this.rva = rva; this.flags = flags; this.methods = ThreadSafeListCreator.Create <IMethod>(methods); }
/// <summary> /// Constructor /// </summary> /// <param name="flags">Flags</param> public VTable(VTableFlags flags) { Flags = flags; Methods = ThreadSafeListCreator.Create <IMethod>(); }
/// <summary> /// Constructor /// </summary> /// <param name="rva">RVA of this vtable</param> /// <param name="flags">Flgas</param> /// <param name="numSlots">Number of methods in vtable</param> public VTable(RVA rva, VTableFlags flags, int numSlots) { this.rva = rva; this.flags = flags; this.methods = ThreadSafeListCreator.Create <IMethod>(numSlots); }
public VTableInfo(VTableFlags flags) { Flags = flags; Methods = new List <MethodInfo>(); }
/// <summary> /// Constructor /// </summary> /// <param name="rva">RVA of this vtable</param> /// <param name="flags">Flgas</param> /// <param name="methods">Vtable methods</param> public VTable(RVA rva, VTableFlags flags, IEnumerable <IMethod> methods) { this.rva = rva; this.flags = flags; this.methods = new List <IMethod>(methods); }
/// <summary> /// Constructor /// </summary> /// <param name="rva">RVA of this vtable</param> /// <param name="flags">Flgas</param> /// <param name="numSlots">Number of methods in vtable</param> public VTable(RVA rva, VTableFlags flags, int numSlots) { this.rva = rva; this.flags = flags; this.methods = new List <IMethod>(numSlots); }
/// <summary> /// Constructor /// </summary> /// <param name="flags">Flags</param> public VTable(VTableFlags flags) { this.flags = flags; this.methods = new List <IMethod>(); }