DotNext by .NET Foundation and Contributors

<PackageReference Include="DotNext" Version="5.3.1" />

 <SharedReadOnlyMemoryStream>FA18DFC1A4C78D18375DBE4474FE9C17A24F11C80A55B9E502DEF13D3393370BB__AsyncLocalStream

using System; using System.Buffers; using System.Diagnostics; using System.Runtime.CompilerServices; using System.Threading; namespace DotNext.IO { internal sealed class <SharedReadOnlyMemoryStream>FA18DFC1A4C78D18375DBE4474FE9C17A24F11C80A55B9E502DEF13D3393370BB__AsyncLocalStream : SharedReadOnlyMemoryStream { private readonly AsyncLocal<StrongBox<SequencePosition>> position = new AsyncLocal<StrongBox<SequencePosition>>(); [DebuggerBrowsable(DebuggerBrowsableState.Never)] private protected override SequencePosition LocalPosition { get { return position.Value?.Value ?? base.StartPosition; } set { AsyncLocal<StrongBox<SequencePosition>> asyncLocal = position; object strongBox = asyncLocal.Value; if (strongBox == null) { StrongBox<SequencePosition> strongBox3 = asyncLocal.Value = new StrongBox<SequencePosition>(); strongBox = strongBox3; } ((StrongBox<SequencePosition>)strongBox).Value = value; } } public <SharedReadOnlyMemoryStream>FA18DFC1A4C78D18375DBE4474FE9C17A24F11C80A55B9E502DEF13D3393370BB__AsyncLocalStream(ReadOnlySequence<byte> sequence) : base(sequence) { } } }