System.Reflection.Metadata.BlobBuilder
class BlobBuilder
namespace System.Reflection.Metadata
{
internal class BlobBuilder
{
public struct Blobs : IEnumerable<Blob>, IEnumerable, IEnumerator<Blob>, IEnumerator, IDisposable
{
public Blob Current { get; }
public bool MoveNext();
public void Reset();
public Blobs GetEnumerator();
}
public int Count { get; }
protected int FreeBytes { get; }
public BlobBuilder(int capacity = 256);
protected virtual BlobBuilder AllocateChunk(int minimalSize);
protected virtual void FreeChunk();
public void Clear();
protected void Free();
public Blobs GetBlobs();
public bool ContentEquals(BlobBuilder other);
public byte[] ToArray();
public byte[] ToArray(int start, int byteCount);
public ImmutableArray<byte> ToImmutableArray();
public ImmutableArray<byte> ToImmutableArray(int start, int byteCount);
public void WriteContentTo(Stream destination);
public void WriteContentTo(ref BlobWriter destination);
public void WriteContentTo(BlobBuilder destination);
public void LinkPrefix(BlobBuilder prefix);
public void LinkSuffix(BlobBuilder suffix);
public Blob ReserveBytes(int byteCount);
public void WriteBytes(byte value, int byteCount);
public unsafe void WriteBytes(byte* buffer, int byteCount);
public int TryWriteBytes(Stream source, int byteCount);
public void WriteBytes(ImmutableArray<byte> buffer);
public void WriteBytes(ImmutableArray<byte> buffer, int start, int byteCount);
public void WriteBytes(byte[] buffer);
public void WriteBytes(byte[] buffer, int start, int byteCount);
public void PadTo(int position);
public void Align(int alignment);
public void WriteBoolean(bool value);
public void WriteByte(byte value);
public void WriteSByte(sbyte value);
public void WriteDouble(double value);
public void WriteSingle(float value);
public void WriteInt16(short value);
public void WriteUInt16(ushort value);
public void WriteInt16BE(short value);
public void WriteUInt16BE(ushort value);
public void WriteInt32BE(int value);
public void WriteUInt32BE(uint value);
public void WriteInt32(int value);
public void WriteUInt32(uint value);
public void WriteInt64(long value);
public void WriteUInt64(ulong value);
public void WriteDecimal(decimal value);
public void WriteGuid(Guid value);
public void WriteDateTime(DateTime value);
public void WriteReference(int reference, bool isSmall);
public void WriteUTF16(char[] value);
public void WriteUTF16(string value);
public void WriteSerializedString(string value);
public void WriteUserString(string value);
public void WriteUTF8(string value, bool allowUnpairedSurrogates = true);
public void WriteCompressedSignedInteger(int value);
public void WriteCompressedInteger(int value);
public void WriteConstant(object value);
}
}