Esempio n. 1
0
 /// <summary>
 /// Implements compressed unsigned integer encoding as defined by ECMA-335-II chapter 23.2: Blobs and signatures.
 /// </summary>
 /// <remarks>
 /// If the value lies between 0 (0x00) and 127 (0x7F), inclusive,
 /// encode as a one-byte integer (bit 7 is clear, value held in bits 6 through 0).
 ///
 /// If the value lies between 28 (0x80) and 214 – 1 (0x3FFF), inclusive,
 /// encode as a 2-byte integer with bit 15 set, bit 14 clear(value held in bits 13 through 0).
 ///
 /// Otherwise, encode as a 4-byte integer, with bit 31 set, bit 30 set, bit 29 clear (value held in bits 28 through 0).
 /// </remarks>
 /// <exception cref="ArgumentOutOfRangeException"><paramref name="value"/> can't be represented as a compressed unsigned integer.</exception>
 public void WriteCompressedInteger(int value)
 {
     BlobWriterImpl.WriteCompressedInteger(ref this, unchecked ((uint)value));
 }
Esempio n. 2
0
 /// <summary>
 /// Writes a constant value (see ECMA-335 Partition II section 22.9) at the current position.
 /// </summary>
 /// <exception cref="ArgumentException"><paramref name="value"/> is not of a constant type.</exception>
 public void WriteConstant(object value)
 {
     BlobWriterImpl.WriteConstant(ref this, value);
 }
Esempio n. 3
0
 /// <summary>
 /// Implements compressed signed integer encoding as defined by ECMA-335-II chapter 23.2: Blobs and signatures.
 /// </summary>
 /// <remarks>
 /// If the value lies between -64 (0xFFFFFFC0) and 63 (0x3F), inclusive, encode as a one-byte integer:
 /// bit 7 clear, value bits 5 through 0 held in bits 6 through 1, sign bit (value bit 31) in bit 0.
 ///
 /// If the value lies between -8192 (0xFFFFE000) and 8191 (0x1FFF), inclusive, encode as a two-byte integer:
 /// 15 set, bit 14 clear, value bits 12 through 0 held in bits 13 through 1, sign bit(value bit 31) in bit 0.
 ///
 /// If the value lies between -268435456 (0xF000000) and 268435455 (0x0FFFFFFF), inclusive, encode as a four-byte integer:
 /// 31 set, 30 set, bit 29 clear, value bits 27 through 0 held in bits 28 through 1, sign bit(value bit 31) in bit 0.
 /// </remarks>
 /// <exception cref="ArgumentOutOfRangeException"><paramref name="value"/> can't be represented as a compressed signed integer.</exception>
 public void WriteCompressedSignedInteger(int value)
 {
     BlobWriterImpl.WriteCompressedSignedInteger(ref this, value);
 }