internal unsafe void MarshalTo(Interop.SpecializationInfo *pointer) { //MapEntries if (this.MapEntries != null) { pointer->MapEntries = (SpecializationMapEntry *)Interop.HeapUtil.Allocate <SpecializationMapEntry>(this.MapEntries.Length).ToPointer(); for (int index = 0; index < this.MapEntries.Length; index++) { pointer->MapEntries[index] = this.MapEntries[index]; } } else { pointer->MapEntries = null; } pointer->Data = this.Data == null ? null : Interop.HeapUtil.MarshalTo(this.Data); pointer->MapEntryCount = (uint)(this.MapEntries?.Length ?? 0); pointer->DataSize = (Size)(this.Data?.Length ?? 0); }
internal SpecializationInfo(Interop.SpecializationInfo* ptr) { m = ptr; }
public SpecializationInfo() { m = (Interop.SpecializationInfo*) Interop.Structure.Allocate (typeof (Interop.SpecializationInfo)); }