/// <summary>Constructs a new <see cref="DebugPointerType"/></summary> /// <param name="debugElementType">Debug type of the pointee</param> /// <param name="module"><see cref="NativeModule"/> used for creating the pointer type and debug information</param> /// <param name="addressSpace">Target address space for the pointer [Default: 0]</param> /// <param name="name">Name of the type [Default: null]</param> /// <param name="alignment">Alignment on pointer</param> public DebugPointerType(IDebugType <ITypeRef, DIType> debugElementType, NativeModule module, uint addressSpace = 0, string name = null, uint alignment = 0) : this(debugElementType.VerifyArgNotNull(nameof(debugElementType)).NativeType , module , debugElementType.VerifyArgNotNull(nameof(debugElementType)).DIType , addressSpace , name , alignment ) { }
/// <summary>Constructs a new <see cref="DebugArrayType"/></summary> /// <param name="elementType">Type of elements in the array</param> /// <param name="module"><see cref="NativeModule"/> to use for the context of the debug information</param> /// <param name="count">Number of elements in the array</param> /// <param name="lowerBound"><see cref="LowerBound"/> value for the array indices [Default: 0]</param> public DebugArrayType(IDebugType <ITypeRef, DIType> elementType, NativeModule module, uint count, uint lowerBound = 0) : this(elementType.VerifyArgNotNull(nameof(elementType)).CreateArrayType(count) , elementType , module , count , lowerBound ) { }