Browse Source

Seal memory classes

af/merge-core
Jason Nelson 8 years ago
parent
commit
61112f9102
  1. 2
      src/ImageSharp/Memory/ArrayPoolMemoryAllocator.cs
  2. 2
      src/ImageSharp/Memory/BasicByteBuffer.cs
  3. 2
      src/ImageSharp/Memory/Buffer2D{T}.cs
  4. 2
      src/ImageSharp/Memory/ManagedBufferBase.cs
  5. 4
      src/ImageSharp/Memory/SimpleGcMemoryAllocator.cs

2
src/ImageSharp/Memory/ArrayPoolMemoryAllocator.cs

@ -9,7 +9,7 @@ namespace SixLabors.Memory
/// <summary>
/// Implements <see cref="MemoryAllocator"/> by allocating memory from <see cref="ArrayPool{T}"/>.
/// </summary>
public partial class ArrayPoolMemoryAllocator : MemoryAllocator
public sealed partial class ArrayPoolMemoryAllocator : MemoryAllocator
{
/// <summary>
/// The <see cref="ArrayPool{T}"/> for small-to-medium buffers which is not kept clean.

2
src/ImageSharp/Memory/BasicByteBuffer.cs

@ -3,7 +3,7 @@
namespace SixLabors.Memory
{
internal class BasicByteBuffer : BasicArrayBuffer<byte>, IManagedByteBuffer
internal sealed class BasicByteBuffer : BasicArrayBuffer<byte>, IManagedByteBuffer
{
internal BasicByteBuffer(byte[] array)
: base(array)

2
src/ImageSharp/Memory/Buffer2D{T}.cs

@ -12,7 +12,7 @@ namespace SixLabors.Memory
/// interpreted as a 2D region of <see cref="Width"/> x <see cref="Height"/> elements.
/// </summary>
/// <typeparam name="T">The value type.</typeparam>
internal class Buffer2D<T> : IDisposable
internal sealed class Buffer2D<T> : IDisposable
where T : struct
{
/// <summary>

2
src/ImageSharp/Memory/ManagedBufferBase.cs

@ -9,7 +9,7 @@ namespace SixLabors.Memory
/// <summary>
/// Provides a base class for <see cref="IBuffer{T}"/> implementations by implementing pinning logic for <see cref="MemoryManager{T}"/> adaption.
/// </summary>
internal abstract class ManagedBufferBase<T> : System.Buffers.MemoryManager<T>, IBuffer<T>
internal abstract class ManagedBufferBase<T> : MemoryManager<T>, IBuffer<T>
where T : struct
{
private GCHandle pinHandle;

4
src/ImageSharp/Memory/SimpleGcMemoryAllocator.cs

@ -3,7 +3,7 @@
/// <summary>
/// Implements <see cref="MemoryAllocator"/> by newing up arrays by the GC on every allocation requests.
/// </summary>
public class SimpleGcMemoryAllocator : MemoryAllocator
public sealed class SimpleGcMemoryAllocator : MemoryAllocator
{
/// <inheritdoc />
internal override IBuffer<T> Allocate<T>(int length, bool clear)
@ -16,4 +16,4 @@
return new BasicByteBuffer(new byte[length]);
}
}
}
}
Loading…
Cancel
Save