Exemple #1
0
static int dump_uint16(VALUE val, LWES_BYTE_P buf, size_t *off)
{
    int32_t tmp = NUM2INT(val);

    if (tmp < 0)
        rb_raise(rb_eRangeError, ":uint16 negative: %d", tmp);
    if (tmp > UINT16_MAX)
        rb_raise(rb_eRangeError, ":uint16 too large: %d", tmp);

    lwesrb_dump_type(LWES_U_INT_16_TOKEN, buf, off);
    return marshall_U_INT_16((LWES_U_INT_16)tmp, buf, MAX_MSG_SIZE, off);
}
int
my_marshall_U_INT_16
  (LWES_U_INT_16     anInt,
   LWES_BYTE_P       bytes,
   size_t            length,
   size_t            *offset)
{
  ++marshall_U_INT_16_count;
  if ( marshall_U_INT_16_count != marshall_U_INT_16_fail_at)
    {
      return marshall_U_INT_16 (anInt, bytes, length, offset);
    }
  return 0;
}