Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Reflection.Metadata.BlobBuilder Class Reference

Classes

struct  Blobs
 
struct  Chunks
 

Public Member Functions

 BlobBuilder (int capacity=256)
 
void Clear ()
 
Blobs GetBlobs ()
 
bool ContentEquals (BlobBuilder other)
 
byte[] ToArray ()
 
byte[] ToArray (int start, int byteCount)
 
ImmutableArray< byte > ToImmutableArray ()
 
ImmutableArray< byte > ToImmutableArray (int start, int byteCount)
 
void WriteContentTo (Stream destination)
 
void WriteContentTo (ref BlobWriter destination)
 
void WriteContentTo (BlobBuilder destination)
 
void LinkPrefix (BlobBuilder prefix)
 
void LinkSuffix (BlobBuilder suffix)
 
Blob ReserveBytes (int byteCount)
 
void WriteBytes (byte value, int byteCount)
 
unsafe void WriteBytes (byte *buffer, int byteCount)
 
int TryWriteBytes (Stream source, int byteCount)
 
void WriteBytes (ImmutableArray< byte > buffer)
 
void WriteBytes (ImmutableArray< byte > buffer, int start, int byteCount)
 
void WriteBytes (byte[] buffer)
 
unsafe void WriteBytes (byte[] buffer, int start, int byteCount)
 
void PadTo (int position)
 
void Align (int alignment)
 
void WriteBoolean (bool value)
 
void WriteByte (byte value)
 
void WriteSByte (sbyte value)
 
void WriteDouble (double value)
 
void WriteSingle (float value)
 
void WriteInt16 (short value)
 
void WriteUInt16 (ushort value)
 
void WriteInt16BE (short value)
 
void WriteUInt16BE (ushort value)
 
void WriteInt32BE (int value)
 
void WriteUInt32BE (uint value)
 
void WriteInt32 (int value)
 
void WriteUInt32 (uint value)
 
void WriteInt64 (long value)
 
void WriteUInt64 (ulong value)
 
void WriteDecimal (decimal value)
 
void WriteGuid (Guid value)
 
void WriteDateTime (DateTime value)
 
void WriteReference (int reference, bool isSmall)
 
unsafe void WriteUTF16 (char[] value)
 
unsafe void WriteUTF16 (string value)
 
void WriteSerializedString (string? value)
 
void WriteUserString (string value)
 
void WriteUTF8 (string value, bool allowUnpairedSurrogates=true)
 
void WriteCompressedSignedInteger (int value)
 
void WriteCompressedInteger (int value)
 
void WriteConstant (object? value)
 

Protected Member Functions

virtual BlobBuilder AllocateChunk (int minimalSize)
 
virtual void FreeChunk ()
 
void Free ()
 

Package Functions

void ClearChunk ()
 
Chunks GetChunks ()
 
unsafe void WriteUTF8 (string str, int start, int length, bool allowUnpairedSurrogates, bool prependSize)
 
string GetDebuggerDisplay ()
 

Static Package Attributes

const int DefaultChunkSize = 256
 
const int MinChunkSize = 16
 

Properties

BlobBuilder FirstChunk [get]
 
bool IsHead [get]
 
int Length [get]
 
uint FrozenLength [get]
 
int Count [get]
 
int PreviousLength [get, set]
 
int FreeBytes [get]
 
int ChunkCapacity [get]
 

Private Member Functions

void CheckInvariants ()
 
void AddLength (int value)
 
void Expand (int newLength)
 
int ReserveBytesImpl (int byteCount)
 
int ReserveBytesPrimitive (int byteCount)
 
unsafe void WriteBytesUnchecked (byte *buffer, int byteCount)
 

Static Private Member Functions

static string Display (byte[] bytes, int length)
 

Private Attributes

BlobBuilder _nextOrPrevious
 
int _previousLengthOrFrozenSuffixLengthDelta
 
byte[] _buffer
 
uint _length
 

Detailed Description

Definition at line 13 of file BlobBuilder.cs.


The documentation for this class was generated from the following file: