@@ -280,14 +280,17 @@ pub fn write_uint64_be(self : Buffer, value : UInt64) -> Unit {
280280/// )
281281/// ```
282282pub fn write_uint64_le (self : Buffer , value : UInt64 ) -> Unit {
283- self .write_byte (value .to_byte ())
284- self .write_byte ((value >> 8 ).to_byte ())
285- self .write_byte ((value >> 16 ).to_byte ())
286- self .write_byte ((value >> 24 ).to_byte ())
287- self .write_byte ((value >> 32 ).to_byte ())
288- self .write_byte ((value >> 40 ).to_byte ())
289- self .write_byte ((value >> 48 ).to_byte ())
290- self .write_byte ((value >> 56 ).to_byte ())
283+ self .grow_if_necessary (self .len + 8 )
284+ let offset = self .len
285+ self .data[offset ] = value .to_byte ()
286+ self .data[offset + 1 ] = (value >> 8 ).to_byte ()
287+ self .data[offset + 2 ] = (value >> 16 ).to_byte ()
288+ self .data[offset + 3 ] = (value >> 24 ).to_byte ()
289+ self .data[offset + 4 ] = (value >> 32 ).to_byte ()
290+ self .data[offset + 5 ] = (value >> 40 ).to_byte ()
291+ self .data[offset + 6 ] = (value >> 48 ).to_byte ()
292+ self .data[offset + 7 ] = (value >> 56 ).to_byte ()
293+ self .len + = 8
291294}
292295
293296///|
@@ -356,10 +359,13 @@ pub fn write_int64_le(self : Buffer, value : Int64) -> Unit {
356359/// inspect(buf.contents(), content="b\"\\x12\\x34\\x56\\x78\"")
357360/// ```
358361pub fn write_uint_be (self : Buffer , value : UInt ) -> Unit {
359- self .write_byte ((value >> 24 ).to_byte ())
360- self .write_byte ((value >> 16 ).to_byte ())
361- self .write_byte ((value >> 8 ).to_byte ())
362- self .write_byte (value .to_byte ())
362+ self .grow_if_necessary (self .len + 4 )
363+ let offset = self .len
364+ self .data[offset ] = (value >> 24 ).to_byte ()
365+ self .data[offset + 1 ] = (value >> 16 ).to_byte ()
366+ self .data[offset + 2 ] = (value >> 8 ).to_byte ()
367+ self .data[offset + 3 ] = value .to_byte ()
368+ self .len + = 4
363369}
364370
365371///|
@@ -380,10 +386,13 @@ pub fn write_uint_be(self : Buffer, value : UInt) -> Unit {
380386/// inspect(buf.contents(), content="b\"\\x78\\x56\\x34\\x12\"")
381387/// ```
382388pub fn write_uint_le (self : Buffer , value : UInt ) -> Unit {
383- self .write_byte (value .to_byte ())
384- self .write_byte ((value >> 8 ).to_byte ())
385- self .write_byte ((value >> 16 ).to_byte ())
386- self .write_byte ((value >> 24 ).to_byte ())
389+ self .grow_if_necessary (self .len + 4 )
390+ let offset = self .len
391+ self .data[offset ] = value .to_byte ()
392+ self .data[offset + 1 ] = (value >> 8 ).to_byte ()
393+ self .data[offset + 2 ] = (value >> 16 ).to_byte ()
394+ self .data[offset + 3 ] = (value >> 24 ).to_byte ()
395+ self .len + = 4
387396}
388397
389398///|
0 commit comments