/// <summary> /// Initializes a new instance of the <see cref="optional{T}"/> class. /// </summary> /// <param name="variable">The variable.</param> /// <exception cref="WrongCodeTypeException">std::optional</exception> public optional(Variable variable) : base(variable) { instance = typeSelector.SelectType(variable); if (instance == null) { throw new WrongCodeTypeException(variable, nameof(variable), "std::optional"); } }
public static extern uint ScriptTextOut( IntPtr hdc, ref IntPtr psc, int x, int y, uint fuOptions, // Win32.RECT lprc, // IntPtr lprc, OptionalBase lprc, SCRIPT_ANALYSIS psa, IntPtr pwcReserved, int iReserved, [MarshalAs(UnmanagedType.LPArray)] ushort[] pwGlyphs, int cGlyphs, [MarshalAs(UnmanagedType.LPArray)] int[] piAdvance, [MarshalAs(UnmanagedType.LPArray)] int[] piJustify, [MarshalAs(UnmanagedType.LPArray)] GOFFSET[] pGoffset );