提交 968f5fed 编写于 作者: J jp9000

Added some return-style functions to calldata.h

  When using signal callbacks, there is rarely a need to check to see if
the callback paramters are actually validl; in those cases, if they are
invalid, then the signal is being used incorrectly.  The calldata_get*
functions are meant to be used more for when using dynamic function
calls rather than when using signals.  The calldata_get* functions made
it so that you have to declare your varaibles, and then call that
function to assign that value to those variables, which was slightly
annoying to constantly have to do over and over.

  Therefore I created a few extra functions for returning the value
without having to check for validity.  Although you would think this
would be an issue for maintaining, keep in mind that these functions
return base types.  Admittedly, these functions are merely for
convenience.
上级 27ccb094
......@@ -162,13 +162,13 @@ static inline bool calldata_getuint64(calldata_t data, const char *name,
}
static inline bool calldata_getfloat (calldata_t data, const char *name,
long *val)
float *val)
{
return calldata_getdata(data, name, val, sizeof(*val));
}
static inline bool calldata_getdouble(calldata_t data, const char *name,
long *val)
double *val)
{
return calldata_getdata(data, name, val, sizeof(*val));
}
......@@ -196,6 +196,162 @@ EXPORT bool calldata_getstring(calldata_t data, const char *name,
/* ------------------------------------------------------------------------- */
static inline char calldata_char(calldata_t data, const char *name)
{
char val;
calldata_getchar(data, name, &val);
return val;
}
static inline unsigned char calldata_uchar(calldata_t data, const char *name)
{
unsigned char val;
calldata_getuchar(data, name, &val);
return val;
}
static inline short calldata_short(calldata_t data, const char *name)
{
short val;
calldata_getshort(data, name, &val);
return val;
}
static inline unsigned short calldata_ushort(calldata_t data, const char *name)
{
unsigned short val;
calldata_getushort(data, name, &val);
return val;
}
static inline int calldata_int(calldata_t data, const char *name)
{
int val;
calldata_getint(data, name, &val);
return val;
}
static inline unsigned int calldata_uint(calldata_t data, const char *name)
{
unsigned int val;
calldata_getuint(data, name, &val);
return val;
}
static inline long calldata_long(calldata_t data, const char *name)
{
long val;
calldata_getlong(data, name, &val);
return val;
}
static inline unsigned long calldata_ulong(calldata_t data, const char *name)
{
unsigned long val;
calldata_getulong(data, name, &val);
return val;
}
static inline int8_t calldata_int8(calldata_t data, const char *name)
{
int8_t val;
calldata_getint8(data, name, &val);
return val;
}
static inline uint8_t calldata_uint8(calldata_t data, const char *name)
{
uint8_t val;
calldata_getuint8(data, name, &val);
return val;
}
static inline int8_t calldata_int16(calldata_t data, const char *name)
{
int8_t val;
calldata_getint16(data, name, &val);
return val;
}
static inline uint8_t calldata_uint16(calldata_t data, const char *name)
{
uint8_t val;
calldata_getuint16(data, name, &val);
return val;
}
static inline int32_t calldata_int32(calldata_t data, const char *name)
{
int32_t val;
calldata_getint32(data, name, &val);
return val;
}
static inline uint32_t calldata_uint32(calldata_t data, const char *name)
{
uint32_t val;
calldata_getuint32(data, name, &val);
return val;
}
static inline int64_t calldata_int64(calldata_t data, const char *name)
{
int64_t val;
calldata_getint64(data, name, &val);
return val;
}
static inline uint64_t calldata_uint64(calldata_t data, const char *name)
{
uint64_t val;
calldata_getuint64(data, name, &val);
return val;
}
static inline float calldata_float(calldata_t data, const char *name)
{
float val;
calldata_getfloat(data, name, &val);
return val;
}
static inline double calldata_double(calldata_t data, const char *name)
{
double val;
calldata_getdouble(data, name, &val);
return val;
}
static inline bool calldata_bool(calldata_t data, const char *name)
{
bool val;
calldata_getbool(data, name, &val);
return val;
}
static inline size_t calldata_size(calldata_t data, const char *name)
{
size_t val;
calldata_getsize(data, name, &val);
return val;
}
static inline void *calldata_ptr(calldata_t data, const char *name)
{
void *val;
calldata_getptr(data, name, &val);
return val;
}
static inline const char *calldata_string(calldata_t data, const char *name)
{
const char *val;
calldata_getstring(data, name, &val);
return val;
}
/* ------------------------------------------------------------------------- */
static void calldata_setchar (calldata_t data, const char *name, char val)
{
calldata_setdata(data, name, &val, sizeof(val));
......@@ -292,13 +448,13 @@ static inline void calldata_setuint64(calldata_t data, const char *name,
}
static inline void calldata_setfloat (calldata_t data, const char *name,
long val)
float val)
{
calldata_setdata(data, name, &val, sizeof(val));
}
static inline void calldata_setdouble(calldata_t data, const char *name,
long val)
double val)
{
calldata_setdata(data, name, &val, sizeof(val));
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册