libxml_helper.h | libxml_helper.h | |||
---|---|---|---|---|
skipping to change at line 57 | skipping to change at line 57 | |||
{ | { | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
return xmlNewProp(node, signed_cast<const xmlChar *>(name), | return xmlNewProp(node, signed_cast<const xmlChar *>(name), | |||
signed_cast<const xmlChar *>(value)); | signed_cast<const xmlChar *>(value)); | |||
#else | #else | |||
return xmlNewProp(node, signed_cast(const xmlChar *, name), | return xmlNewProp(node, signed_cast(const xmlChar *, name), | |||
signed_cast(const xmlChar *, value)); | signed_cast(const xmlChar *, value)); | |||
#endif | #endif | |||
} | } | |||
static inline xmlNode *xml_newnode(xmlNs *ns, const char *name) | /** | |||
* @ptr: parent node | ||||
* @name: name of new node | ||||
* @value: string, or %NULL | ||||
*/ | ||||
static inline xmlNode *xml_newnode(xmlNode *ptr, const char *name, | ||||
const char *value) | ||||
{ | { | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
return xmlNewNode(ns, signed_cast<const xmlChar *>(name)); | return xmlNewTextChild(ptr, NULL, signed_cast<const xmlChar *>(name) | |||
, | ||||
signed_cast<const xmlChar *>(value)); | ||||
#else | #else | |||
return xmlNewNode(ns, signed_cast(const xmlChar *, name)); | return xmlNewTextChild(ptr, NULL, signed_cast(const xmlChar *, name) | |||
, | ||||
signed_cast(const xmlChar *, value)); | ||||
#endif | #endif | |||
} | } | |||
static inline xmlAttr *xml_setprop(xmlNode *node, const char *name, | static inline xmlAttr *xml_setprop(xmlNode *node, const char *name, | |||
const char *value) | const char *value) | |||
{ | { | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
return xmlSetProp(node, signed_cast<const xmlChar *>(name), | return xmlSetProp(node, signed_cast<const xmlChar *>(name), | |||
signed_cast<const xmlChar *>(value)); | signed_cast<const xmlChar *>(value)); | |||
#else | #else | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 13 lines changed or added | |||
list.h | list.h | |||
---|---|---|---|---|
skipping to change at line 69 | skipping to change at line 69 | |||
static inline bool HXlist_empty(const struct HXlist_head *head) | static inline bool HXlist_empty(const struct HXlist_head *head) | |||
{ | { | |||
return head->next == head; | return head->next == head; | |||
} | } | |||
#define HXlist_for_each(pos, head) \ | #define HXlist_for_each(pos, head) \ | |||
for ((pos) = (head)->next; (pos) != (void *)(head); \ | for ((pos) = (head)->next; (pos) != (void *)(head); \ | |||
(pos) = (pos)->next) | (pos) = (pos)->next) | |||
#define HXlist_for_each_prev(pos, head) \ | #define HXlist_for_each_rev(pos, head) \ | |||
for ((pos) = (head)->prev; (pos) != (void *)(head); \ | for ((pos) = (head)->prev; (pos) != (void *)(head); \ | |||
(pos) = (pos)->prev) | (pos) = (pos)->prev) | |||
#define HXlist_for_each_safe(pos, n, head) \ | #define HXlist_for_each_safe(pos, n, head) \ | |||
for ((pos) = (head)->next, (n) = (pos)->next; (pos) != (void *)(head ); \ | for ((pos) = (head)->next, (n) = (pos)->next; (pos) != (void *)(head ); \ | |||
(pos) = (n), (n) = (pos)->next) | (pos) = (n), (n) = (pos)->next) | |||
#define HXlist_for_each_prev_safe(pos, n, head) \ | #define HXlist_for_each_rev_safe(pos, n, head) \ | |||
for ((pos) = (head)->prev, (n) = (pos)->prev; (pos) != (void *)(head ); \ | for ((pos) = (head)->prev, (n) = (pos)->prev; (pos) != (void *)(head ); \ | |||
(pos) = (n), (n) = (pos)->prev) | (pos) = (n), (n) = (pos)->prev) | |||
#define HXlist_for_each_entry(pos, head, member) \ | #define HXlist_for_each_entry(pos, head, member) \ | |||
for ((pos) = HXlist_entry((head)->next, typeof(*(pos)), member); \ | for ((pos) = HXlist_entry((head)->next, typeof(*(pos)), member); \ | |||
&(pos)->member != (void *)(head); \ | &(pos)->member != (void *)(head); \ | |||
(pos) = HXlist_entry((pos)->member.next, typeof(*(pos)), member )) | (pos) = HXlist_entry((pos)->member.next, typeof(*(pos)), member )) | |||
#define HXlist_for_each_entry_rev(pos, head, member) \ | #define HXlist_for_each_entry_rev(pos, head, member) \ | |||
for ((pos) = HXlist_entry((head)->prev, typeof(*(pos)), member); \ | for ((pos) = HXlist_entry((head)->prev, typeof(*(pos)), member); \ | |||
skipping to change at line 150 | skipping to change at line 150 | |||
{ | { | |||
struct HXlist_head *p; | struct HXlist_head *p; | |||
if ((const void *)head == head->list.next) | if ((const void *)head == head->list.next) | |||
return NULL; | return NULL; | |||
p = head->list.prev; | p = head->list.prev; | |||
HXlist_del(p); | HXlist_del(p); | |||
--head->items; | --head->items; | |||
return p; | return p; | |||
} | } | |||
#define HXclist_pop(head, type, member) ({ \ | #define HXclist_pop(head, type, member) \ | |||
struct HXlist_head *x = __HXclist_pop(head); \ | HXlist_entry(__HXclist_pop(head), type, member) | |||
HXlist_entry(x, type, member); \ | ||||
}) | ||||
static inline struct HXlist_head *__HXclist_shift(struct HXclist_head *head ) | static inline struct HXlist_head *__HXclist_shift(struct HXclist_head *head ) | |||
{ | { | |||
struct HXlist_head *p; | struct HXlist_head *p; | |||
if ((const void *)head == head->list.next) | if ((const void *)head == head->list.next) | |||
return NULL; | return NULL; | |||
p = head->list.next; | p = head->list.next; | |||
HXlist_del(p); | HXlist_del(p); | |||
--head->items; | --head->items; | |||
return p; | return p; | |||
} | } | |||
#define HXclist_shift(head, type, member) ({ \ | #define HXclist_shift(head, type, member) \ | |||
struct HXlist_head *x = __HXclist_shift(head); \ | HXlist_entry(__HXclist_shift(head), type, member) | |||
HXlist_entry(x, type, member); \ | ||||
}) | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} /* extern "C" */ | } /* extern "C" */ | |||
#endif | #endif | |||
#endif /* _LIBHX_LIST_H */ | #endif /* _LIBHX_LIST_H */ | |||
End of changes. 4 change blocks. | ||||
10 lines changed or deleted | 6 lines changed or added | |||
misc.h | misc.h | |||
---|---|---|---|---|
skipping to change at line 34 | skipping to change at line 34 | |||
((bits + __HXbitmap_bpq(type) - 1) / __HXbitmap_bpq(type)) | ((bits + __HXbitmap_bpq(type) - 1) / __HXbitmap_bpq(type)) | |||
#define __HXbitmap_quant(map, bit) \ | #define __HXbitmap_quant(map, bit) \ | |||
((map)[bit / __HXbitmap_bpq(*(map))]) | ((map)[bit / __HXbitmap_bpq(*(map))]) | |||
#define HXbitmap_set(map, bit) \ | #define HXbitmap_set(map, bit) \ | |||
((void)(__HXbitmap_quant(map, bit) |= (1ULL << (bit % __HXbitmap_bpq (*(map)))))) | ((void)(__HXbitmap_quant(map, bit) |= (1ULL << (bit % __HXbitmap_bpq (*(map)))))) | |||
#define HXbitmap_clear(map, bit) \ | #define HXbitmap_clear(map, bit) \ | |||
((void)(__HXbitmap_quant(map, bit) &= ~(1ULL << (bit % __HXbitmap_bp q(*(map)))))) | ((void)(__HXbitmap_quant(map, bit) &= ~(1ULL << (bit % __HXbitmap_bp q(*(map)))))) | |||
#define HXbitmap_test(map, bit) \ | #define HXbitmap_test(map, bit) \ | |||
((bool)(__HXbitmap_quant(map, bit) & (1ULL << (bit % __HXbitmap_bpq( *(map)))))) | ((bool)(__HXbitmap_quant(map, bit) & (1ULL << (bit % __HXbitmap_bpq( *(map)))))) | |||
struct HXdir; | ||||
struct stat; | struct stat; | |||
struct timespec; | struct timespec; | |||
struct timeval; | struct timeval; | |||
/* | /* | |||
* DIR.C | * DIR.C | |||
*/ | */ | |||
enum { | enum { | |||
HXF_UID = 1 << 0, | HXF_UID = 1 << 0, | |||
HXF_GID = 1 << 1, | HXF_GID = 1 << 1, | |||
HXF_KEEP = 1 << 2, | HXF_KEEP = 1 << 2, | |||
}; | }; | |||
extern void *HXdir_open(const char *); | extern struct HXdir *HXdir_open(const char *); | |||
extern const char *HXdir_read(void *); | extern const char *HXdir_read(struct HXdir *); | |||
extern void HXdir_close(void *); | extern void HXdir_close(struct HXdir *); | |||
extern int HX_copy_dir(const char *, const char *, unsigned int, ...); | extern int HX_copy_dir(const char *, const char *, unsigned int, ...); | |||
extern int HX_copy_file(const char *, const char *, unsigned int, ...); | extern int HX_copy_file(const char *, const char *, unsigned int, ...); | |||
extern int HX_mkdir(const char *); | extern int HX_mkdir(const char *); | |||
extern int HX_rrmdir(const char *); | extern int HX_rrmdir(const char *); | |||
/* | /* | |||
* DL.C | * DL.C | |||
*/ | */ | |||
extern void *HX_dlopen(const char *); | extern void *HX_dlopen(const char *); | |||
extern void *HX_dlsym(void *, const char *); | extern void *HX_dlsym(void *, const char *); | |||
skipping to change at line 86 | skipping to change at line 87 | |||
/* | /* | |||
* RAND.C | * RAND.C | |||
*/ | */ | |||
extern int HX_rand(void); | extern int HX_rand(void); | |||
extern unsigned int HX_irand(unsigned int, unsigned int); | extern unsigned int HX_irand(unsigned int, unsigned int); | |||
extern double HX_drand(double, double); | extern double HX_drand(double, double); | |||
/* | /* | |||
* INLINE FUNCTIONS | * INLINE FUNCTIONS | |||
*/ | */ | |||
static inline int HX_zveclen(const char *const *args) | static inline unsigned int HX_zveclen(const char *const *args) | |||
{ | { | |||
int argk = 0; | unsigned int argk = 0; | |||
while (*args++ != NULL) | while (*args++ != NULL) | |||
++argk; | ++argk; | |||
return argk; | return argk; | |||
} | } | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} /* extern "C" */ | } /* extern "C" */ | |||
extern "C++" { | extern "C++" { | |||
End of changes. 4 change blocks. | ||||
5 lines changed or deleted | 6 lines changed or added | |||