Show / Hide Table of Contents

Class SequenceBuilder<T>

Represents builder of non-contiguous memory buffer.

Inheritance
object
Disposable
SparseBufferWriter<T>
SequenceBuilder<T>
Implements
IGrowableBuffer<T>
IReadOnlySpanConsumer<T>
ISupplier<ReadOnlyMemory<T>, CancellationToken, ValueTask>
IFunctional<Func<ReadOnlyMemory<T>, CancellationToken, ValueTask>>
IResettable
IEnumerable<ReadOnlyMemory<T>>
IEnumerable
IBufferWriter<T>
IReadOnlySequenceSource<T>
IDisposable
ISupplier<ReadOnlySequence<T>>
IFunctional<Func<ReadOnlySequence<T>>>
Inherited Members
SparseBufferWriter<T>.WrittenCount
SparseBufferWriter<T>.IsSingleSegment
SparseBufferWriter<T>.TryGetWrittenContent(out ReadOnlyMemory<T>)
SparseBufferWriter<T>.Write(ReadOnlySpan<T>)
SparseBufferWriter<T>.Write(ReadOnlyMemory<T>, bool)
SparseBufferWriter<T>.Add(T)
SparseBufferWriter<T>.Write(in ReadOnlySequence<T>, bool)
SparseBufferWriter<T>.CopyTo<TConsumer>(TConsumer)
SparseBufferWriter<T>.CopyTo<TArg>(ReadOnlySpanAction<T, TArg>, TArg)
SparseBufferWriter<T>.CopyTo(Span<T>)
SparseBufferWriter<T>.Clear()
SparseBufferWriter<T>.Dispose(bool)
SparseBufferWriter<T>.ToString()
SparseBufferWriter<T>.End
SparseBufferWriter<T>.Start
SparseBufferWriter<T>.GetPosition(long, SequencePosition)
SparseBufferWriter<T>.Read(ref SequencePosition, long)
SparseBufferWriter<T>.CopyTo(scoped Span<T>, scoped ref SequencePosition)
SparseBufferWriter<T>.CopyTo<TConsumer>(TConsumer, SequencePosition)
SparseBufferWriter<T>.CopyTo<TConsumer>(TConsumer, scoped ref SequencePosition, long)
SparseBufferWriter<T>.GetEnumerator()
Disposable.IsDisposed
Disposable.IsDisposing
Disposable.IsDisposingOrDisposed
Disposable.CreateException()
Disposable.DisposedTask
Disposable.GetDisposedTask<T>()
Disposable.TrySetDisposedException<T>(TaskCompletionSource<T>)
Disposable.TrySetDisposedException(TaskCompletionSource)
Disposable.DisposeAsyncCore()
Disposable.DisposeAsync()
Disposable.TryBeginDispose()
Disposable.Dispose()
Disposable.Dispose(IEnumerable<IDisposable>)
Disposable.DisposeAsync(IEnumerable<IAsyncDisposable>)
Disposable.Dispose<T>(ReadOnlySpan<T>)
Disposable.DisposeAsync(params IAsyncDisposable[])
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
Namespace: DotNext.Buffers
Assembly: DotNext.IO.dll
Syntax
public class SequenceBuilder<T> : SparseBufferWriter<T>, IGrowableBuffer<T>, IReadOnlySpanConsumer<T>, ISupplier<ReadOnlyMemory<T>, CancellationToken, ValueTask>, IFunctional<Func<ReadOnlyMemory<T>, CancellationToken, ValueTask>>, IResettable, IEnumerable<ReadOnlyMemory<T>>, IEnumerable, IBufferWriter<T>, IReadOnlySequenceSource<T>, IDisposable, ISupplier<ReadOnlySequence<T>>, IFunctional<Func<ReadOnlySequence<T>>>
Type Parameters
Name Description
T

The type of the elements in the memory.

Constructors

| Edit this page View Source

SequenceBuilder()

Initializes a new builder which uses Shared as a default allocator of buffers.

Declaration
public SequenceBuilder()
| Edit this page View Source

SequenceBuilder(MemoryPool<T>)

Initializes a new builder with automatically selected chunk size.

Declaration
public SequenceBuilder(MemoryPool<T> pool)
Parameters
Type Name Description
MemoryPool<T> pool

Memory pool used to allocate memory chunks.

| Edit this page View Source

SequenceBuilder(int, MemoryAllocator<T>?)

Initializes a new builder with the specified size of memory block.

Declaration
public SequenceBuilder(int chunkSize, MemoryAllocator<T>? allocator = null)
Parameters
Type Name Description
int chunkSize

The size of the memory block representing single segment within sequence.

MemoryAllocator<T> allocator

The allocator used to rent the segments.

Exceptions
Type Condition
ArgumentOutOfRangeException

chunkSize is less than or equal to zero.

Implements

IGrowableBuffer<T>
IReadOnlySpanConsumer<T>
ISupplier<T1, T2, TResult>
IFunctional<TDelegate>
IResettable
IEnumerable<T>
IEnumerable
IBufferWriter<T>
IReadOnlySequenceSource<T>
IDisposable
ISupplier<TResult>
IFunctional<TDelegate>

Extension Methods

BasicExtensions.As<T>(T)
BasicExtensions.GetUserData<T>(T)
BasicExtensions.IsBetween<T, TLowerBound, TUpperBound>(T, TLowerBound, TUpperBound)
BasicExtensions.IsOneOf<T>(T, ReadOnlySpan<T>)
ExpressionBuilder.Const<T>(T)
AsyncLockAcquisition.AcquireLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireLockAsync<T>(T, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, bool, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, bool, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, TimeSpan, CancellationToken)
LockAcquisition.AcquireReadLock<T>(T)
LockAcquisition.AcquireReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireUpgradeableReadLock<T>(T)
LockAcquisition.AcquireUpgradeableReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireWriteLock<T>(T)
LockAcquisition.AcquireWriteLock<T>(T, TimeSpan)
BufferWriter.Write<T>(IBufferWriter<T>, in ReadOnlySequence<T>)
Memory.ToReadOnlySequence<T>(IEnumerable<ReadOnlyMemory<T>>?)
Collection.Append<T>(IEnumerable<T>, params T[])
Collection.Copy<T>(IEnumerable<T>, int, MemoryAllocator<T>?)
Collection.ElementAt<T>(IEnumerable<T>, int, out T)
Collection.FirstOrNone<T>(IEnumerable<T>)
Collection.ForEachAsync<T>(IEnumerable<T>, Func<T, CancellationToken, ValueTask>, CancellationToken)
Collection.ForEach<T>(IEnumerable<T>, Action<T>)
Collection.LastOrNone<T>(IEnumerable<T>)
Collection.Prepend<T>(IEnumerable<T>, params T[])
Collection.SequenceHashCode<T>(IEnumerable<T>, bool)
Collection.ToAsyncEnumerable<T>(IEnumerable<T>)
Collection.ToString<T>(IEnumerable<T>, string, string)
Enumerator.GetAsyncEnumerator<T>(IEnumerable<T>, CancellationToken)
  • Edit this page
  • View Source
☀
☾
In this article
Back to top
Supported by the .NET Foundation
☀
☾