public NativeArray(NativeType elemType, int len) : base((byte)NativeTypeIx.Array) { Contract.Requires(len >= 0); this.elemType = elemType; this.len = (uint)len; }
/*-------------------- Constructors ---------------------------------*/ internal FieldMarshal(MetaDataElement field, NativeType nType) { Contract.Requires(field != null); this.field = field; this.nt = nType; tabIx = MDTable.FieldMarshal; }
internal NativeArray(NativeType elemType, uint pNum, uint elemMult, uint numElem) : base((byte)NativeTypeIx.Array) { this.elemType = elemType; parNum = pNum; this.elemMult = elemMult; len = numElem; }
public NativeArray(NativeType elemType, int numElem, int parNumForLen) : base((byte)NativeTypeIx.Array) { this.elemType = elemType; len = (uint)numElem; Contract.Requires(numElem >= 0); parNum = (uint)parNumForLen; }
internal override void Resolve(PEReader buff) { field = buff.GetCodedElement(CIx.HasFieldMarshal, parentIx); nt = buff.GetBlobNativeType(ntIx); if (field is FieldDef) { ((FieldDef)field).SetMarshalType(nt); } else { ((Param)field).SetMarshalType(nt); } }
/// <summary> /// Set the marshalling info for a field /// </summary> /// <param name="mType"></param> public void SetMarshalType(NativeType mType) { flags |= HasFieldMarshal; marshalType = mType; }
public void RemoveMarshalType() { marshalType = null; flags &= NoFieldMarshal; }
/*-------------------- Constructors ---------------------------------*/ public NativeArray(NativeType elemType) : base((byte)NativeTypeIx.Array) { this.elemType = elemType; }