/*
 * call-seq:
 *      rd[index] = value
 *
 * Assigns +value+ to the slot designated by +index+
 */
static VALUE aset(VALUE self, VALUE index, VALUE value)
{
        unsigned long *addr = addr_of(self, index);

        *addr = NUM2ULONG(value);

        return value;
}