/*
* call-seq:
* sender -> string
*
* The private group name of the Spread node that sent the message.
*/
static VALUE
sm_sender(VALUE obj)
{
/*
* The various message types store different stuff in the `sender'
* field, but since it's always a NUL-terminated string, the
* implementation remains the same.
*/
struct SpreadMessage *sp_mess;
Data_Get_Struct(obj, struct SpreadMessage, sp_mess);
/* XXX: is it worth memo-izing this? */
return rb_str_new2(sp_mess->sender);
}