File: Windows.Win32.VariableLengthInlineArray.g.cs
Project: src\src\System.Windows.Forms.Primitives\src\System.Windows.Forms.Primitives.csproj (System.Windows.Forms.Primitives)
// ------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
// ------------------------------------------------------------------------------

#pragma warning disable CS1591,CS1573,CS0465,CS0649,CS8019,CS1570,CS1584,CS1658,CS0436,CS8981
using global::System;
using global::System.Diagnostics;
using global::System.Diagnostics.CodeAnalysis;
using global::System.Runtime.CompilerServices;
using global::System.Runtime.InteropServices;
using global::System.Runtime.Versioning;
using winmdroot = global::Windows.Win32;
namespace Windows.Win32
{
	internal struct VariableLengthInlineArray<T, TBlittable>
where T : unmanaged
where TBlittable : unmanaged
	{
		private TBlittable _e0;


		[UnscopedRef]
		internal ref T e0 => ref Unsafe.As<TBlittable, T>(ref this._e0);


		internal ref T this[int index]
		{
						[UnscopedRef]
			[MethodImpl(MethodImplOptions.AggressiveInlining)]
get => ref Unsafe.Add(ref this.e0, index);
		}


		[UnscopedRef]
		[MethodImpl(MethodImplOptions.AggressiveInlining)]
		internal Span<T> AsSpan(int length)

		{
			return MemoryMarshal.CreateSpan(ref this.e0, length);
		}
	}
}