public override void Write(WritingContext context)
{
var writer = context.Writer;
writer.WriteSerString(TypeName);
if (NamedArguments.Count == 0)
{
writer.WriteCompressedUInt32(1);
writer.WriteCompressedUInt32(0);
}
else
{
writer.WriteCompressedUInt32(
(uint)(NamedArguments.Count.GetCompressedSize() + NamedArguments.Sum(x => x.GetPhysicalLength())));
writer.WriteCompressedUInt32((uint)NamedArguments.Count);
foreach (var argument in NamedArguments)
{
argument.Write(context);
}
}
}