void WriteWithoutVersion( CKBinaryWriter w )
{
if( w == null ) throw new ArgumentNullException( "w" );
w.Write( _message );
w.Write( _exceptionTypeName );
w.Write( _exceptionTypeAQName );
w.WriteNullableString( _stackTrace );
w.WriteNullableString( _fileName );
w.WriteNullableString( _detailedInfo );
if( _aggregatedExceptions != null )
{
w.WriteSmallInt32( _aggregatedExceptions.Length );
foreach( var agg in _aggregatedExceptions ) agg.WriteWithoutVersion( w );
}
else
{
if( _innerException != null )
{
w.WriteSmallInt32( 0 );
_innerException.WriteWithoutVersion( w );
}
else w.WriteSmallInt32( -1 );
}
if( _loaderExceptions != null )
{
w.WriteNonNegativeSmallInt32( _loaderExceptions.Length );
foreach( var ld in _loaderExceptions ) ld.WriteWithoutVersion( w );
}
else w.WriteNonNegativeSmallInt32( 0 );
}