using System;
namespace System.Runtime.InteropServices
{
/// Indicates how to marshal the data between managed and unmanaged code.
// Token: 0x02000042 RID: 66
[AttributeUsage(AttributeTargets.Field | AttributeTargets.Parameter | AttributeTargets.ReturnValue, Inherited = false)]
[ComVisible(true)]
public sealed class MarshalAsAttribute : Attribute
{
/// Initializes a new instance of the class with the specified value.
/// The value the data is to be marshaled as.
// Token: 0x0600065B RID: 1627 RVA: 0x00014AC0 File Offset: 0x00012CC0
public MarshalAsAttribute(short unmanagedType)
{
this.utype = (UnmanagedType)unmanagedType;
}
/// Initializes a new instance of the class with the specified enumeration member.
/// The value the data is to be marshaled as.
// Token: 0x0600065C RID: 1628 RVA: 0x00014AD0 File Offset: 0x00012CD0
public MarshalAsAttribute(UnmanagedType unmanagedType)
{
this.utype = unmanagedType;
}
/// Gets the value the data is to be marshaled as.
/// The value the data is to be marshaled as.
// Token: 0x170000B0 RID: 176
// (get) Token: 0x0600065D RID: 1629 RVA: 0x00014AE0 File Offset: 0x00012CE0
public UnmanagedType Value
{
get
{
return this.utype;
}
}
// Token: 0x04000090 RID: 144
private UnmanagedType utype;
/// Specifies the element type of the unmanaged or .
// Token: 0x04000091 RID: 145
public UnmanagedType ArraySubType;
/// Provides additional information to a custom marshaler.
// Token: 0x04000092 RID: 146
public string MarshalCookie;
/// Specifies the fully qualified name of a custom marshaler.
// Token: 0x04000093 RID: 147
[ComVisible(true)]
public string MarshalType;
/// Implements as a type.
// Token: 0x04000094 RID: 148
[ComVisible(true)]
public Type MarshalTypeRef;
/// Indicates the element type of the .
// Token: 0x04000095 RID: 149
public VarEnum SafeArraySubType;
/// Indicates the number of elements in the fixed-length array or the number of characters (not bytes) in a string to import.
// Token: 0x04000096 RID: 150
public int SizeConst;
/// Indicates which parameter contains the count of array elements, much like size_is in COM, and is zero-based.
// Token: 0x04000097 RID: 151
public short SizeParamIndex;
/// Indicates the user-defined element type of the .
// Token: 0x04000098 RID: 152
public Type SafeArrayUserDefinedSubType;
/// Specifies the parameter index of the unmanaged iid_is attribute used by COM.
// Token: 0x04000099 RID: 153
public int IidParameterIndex;
}
}