Commit cc901629 authored by Pekka Pessi's avatar Pekka Pessi

Added constant reference type su_msg_cr[].

darcs-hash:20050930122409-65a35-6e5a1ed166f298883197553ed0019b6709eb0b31.gz
parent 79e71855
......@@ -1328,7 +1328,7 @@ void su_msg_destroy(su_msg_r rmsg)
*
* @return A pointer to the message data area is returned.
*/
su_msg_arg_t *su_msg_data(su_msg_r rmsg)
su_msg_arg_t *su_msg_data(su_msg_cr rmsg)
{
if (rmsg[0] && rmsg[0]->sum_size > sizeof(su_msg_t))
return rmsg[0]->sum_data;
......@@ -1337,7 +1337,7 @@ su_msg_arg_t *su_msg_data(su_msg_r rmsg)
}
/** Get size of message data area. */
int su_msg_size(su_msg_r rmsg)
int su_msg_size(su_msg_cr rmsg)
{
return rmsg[0] ? rmsg[0]->sum_size - sizeof(su_msg_t) : 0;
}
......
......@@ -294,16 +294,8 @@ typedef struct su_msg_s su_msg_t;
/** Message reference type. */
typedef su_msg_t *su_msg_r[1];
/** Does reference contain a message? */
#if SU_HAVE_INLINE
static SU_INLINE
int su_msg_is_non_null(su_msg_r msg)
{
return *msg != NULL;
}
#else
#define su_msg_is_non_null(msg) ((*msg) != NULL)
#endif
/** Contstant reference to su_msg */
typedef su_msg_t * const su_msg_cr[1];
/** Initializer for a message reference. @HI */
#define SU_MSG_R_INIT { NULL }
......@@ -412,12 +404,23 @@ int su_msg_reply(su_msg_r reply, su_msg_r const msg,
su_msg_f wakeup, int size);
void su_msg_destroy(su_msg_r msg);
void su_msg_save(su_msg_r msg, su_msg_r msg0);
su_msg_arg_t *su_msg_data(su_msg_r msg);
int su_msg_size(su_msg_r msg);
_su_task_r su_msg_from(su_msg_r const msg);
_su_task_r su_msg_to(su_msg_r const msg);
su_msg_arg_t *su_msg_data(su_msg_cr msg);
int su_msg_size(su_msg_cr msg);
_su_task_r su_msg_from(su_msg_cr const msg);
_su_task_r su_msg_to(su_msg_cr const msg);
int su_msg_send(su_msg_r msg);
/** Does reference contain a message? */
#if SU_HAVE_INLINE
static SU_INLINE
int su_msg_is_non_null(su_msg_cr msg)
{
return *msg != NULL;
}
#else
#define su_msg_is_non_null(msg) ((*msg) != NULL)
#endif
/* Clones */
int su_root_threading(su_root_t *self, int enable);
int su_clone_start(su_root_t *root,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment