diff -r 92e482410453 -r d345541018fa docs/api-2.1/utils_8h.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docs/api-2.1/utils_8h.html Sat Feb 06 19:11:44 2021 +0100 @@ -0,0 +1,2233 @@ + + +
+ + + + ++ |
+ ucx
+
+ UAP Common Extensions
+ |
+
Compare, copy and printf functions. +More...
+#include "ucx.h"
#include "string.h"
#include "allocator.h"
#include <inttypes.h>
#include <stdarg.h>
Go to the source code of this file.
++Macros | |
+#define | UCX_STREAM_COPY_BUFSIZE 4096 |
Default buffer size for ucx_stream_copy() and ucx_stream_ncopy(). | |
#define | ucx_stream_copy(src, dest, rfnc, wfnc) |
Shorthand for an unbounded ucx_stream_bncopy call using a default buffer. More... | |
#define | ucx_stream_ncopy(src, dest, rfnc, wfnc, n) |
Shorthand for ucx_stream_bncopy using a default copy buffer. More... | |
#define | ucx_stream_bcopy(src, dest, rfnc, wfnc, buf, bufsize) |
Shorthand for an unbounded ucx_stream_bncopy call using the specified buffer. More... | |
#define | ucx_sprintf(...) ucx_asprintf(ucx_default_allocator(), __VA_ARGS__) |
Shortcut for ucx_asprintf() with default allocator. More... | |
#define | ucx_bprintf(buffer, ...) |
A printf() like function which writes the output to a UcxBuffer. More... | |
+Functions | |
void * | ucx_strcpy (const void *s, void *data) |
Copies a string. More... | |
void * | ucx_memcpy (const void *m, void *n) |
Copies a memory area. More... | |
size_t | ucx_stream_bncopy (void *src, void *dest, read_func rfnc, write_func wfnc, char *buf, size_t bufsize, size_t n) |
Reads data from a stream and writes it to another stream. More... | |
int | ucx_cmp_str (const void *s1, const void *s2, void *data) |
Wraps the strcmp function. More... | |
int | ucx_cmp_strn (const void *s1, const void *s2, void *n) |
Wraps the strncmp function. More... | |
int | ucx_cmp_sstr (const void *s1, const void *s2, void *data) |
Wraps the sstrcmp function. More... | |
int | ucx_cmp_int (const void *i1, const void *i2, void *data) |
Compares two integers of type int. More... | |
int | ucx_cmp_longint (const void *i1, const void *i2, void *data) |
Compares two integers of type long int. More... | |
int | ucx_cmp_longlong (const void *i1, const void *i2, void *data) |
Compares two integers of type long long. More... | |
int | ucx_cmp_int16 (const void *i1, const void *i2, void *data) |
Compares two integers of type int16_t. More... | |
int | ucx_cmp_int32 (const void *i1, const void *i2, void *data) |
Compares two integers of type int32_t. More... | |
int | ucx_cmp_int64 (const void *i1, const void *i2, void *data) |
Compares two integers of type int64_t. More... | |
int | ucx_cmp_uint (const void *i1, const void *i2, void *data) |
Compares two integers of type unsigned int. More... | |
int | ucx_cmp_ulongint (const void *i1, const void *i2, void *data) |
Compares two integers of type unsigned long int. More... | |
int | ucx_cmp_ulonglong (const void *i1, const void *i2, void *data) |
Compares two integers of type unsigned long long. More... | |
int | ucx_cmp_uint16 (const void *i1, const void *i2, void *data) |
Compares two integers of type uint16_t. More... | |
int | ucx_cmp_uint32 (const void *i1, const void *i2, void *data) |
Compares two integers of type uint32_t. More... | |
int | ucx_cmp_uint64 (const void *i1, const void *i2, void *data) |
Compares two integers of type uint64_t. More... | |
intmax_t | ucx_dist_int (const void *i1, const void *i2, void *data) |
Distance function for integers of type int. More... | |
intmax_t | ucx_dist_longint (const void *i1, const void *i2, void *data) |
Distance function for integers of type long int. More... | |
intmax_t | ucx_dist_longlong (const void *i1, const void *i2, void *data) |
Distance function for integers of type long long. More... | |
intmax_t | ucx_dist_int16 (const void *i1, const void *i2, void *data) |
Distance function for integers of type int16_t. More... | |
intmax_t | ucx_dist_int32 (const void *i1, const void *i2, void *data) |
Distance function for integers of type int32_t. More... | |
intmax_t | ucx_dist_int64 (const void *i1, const void *i2, void *data) |
Distance function for integers of type int64_t. More... | |
intmax_t | ucx_dist_uint (const void *i1, const void *i2, void *data) |
Distance function for integers of type unsigned int. More... | |
intmax_t | ucx_dist_ulongint (const void *i1, const void *i2, void *data) |
Distance function for integers of type unsigned long int. More... | |
intmax_t | ucx_dist_ulonglong (const void *i1, const void *i2, void *data) |
Distance function for integers of type unsigned long long. More... | |
intmax_t | ucx_dist_uint16 (const void *i1, const void *i2, void *data) |
Distance function for integers of type uint16_t. More... | |
intmax_t | ucx_dist_uint32 (const void *i1, const void *i2, void *data) |
Distance function for integers of type uint32_t. More... | |
intmax_t | ucx_dist_uint64 (const void *i1, const void *i2, void *data) |
Distance function for integers of type uint64_t. More... | |
int | ucx_cmp_float (const void *f1, const void *f2, void *data) |
Compares two real numbers of type float. More... | |
int | ucx_cmp_double (const void *d1, const void *d2, void *data) |
Compares two real numbers of type double. More... | |
int | ucx_cmp_ptr (const void *ptr1, const void *ptr2, void *data) |
Compares two pointers. More... | |
int | ucx_cmp_mem (const void *ptr1, const void *ptr2, void *n) |
Compares two memory areas. More... | |
int | ucx_fprintf (void *stream, write_func wfc, const char *fmt,...) |
A printf() like function which writes the output to a stream by using a write_func(). More... | |
int | ucx_vfprintf (void *stream, write_func wfc, const char *fmt, va_list ap) |
va_list version of ucx_fprintf(). More... | |
sstr_t | ucx_asprintf (UcxAllocator *allocator, const char *fmt,...) |
A printf() like function which allocates space for a sstr_t the result is written to. More... | |
sstr_t | ucx_vasprintf (UcxAllocator *allocator, const char *fmt, va_list ap) |
va_list version of ucx_asprintf(). More... | |
Compare, copy and printf functions.
+ +#define ucx_bprintf | +( | ++ | buffer, | +
+ | + | + | ... | +
+ | ) | ++ |
A printf()
like function which writes the output to a UcxBuffer.
buffer | the buffer the data is written to |
... | format string and additional arguments |
#define ucx_sprintf | +( | ++ | ... | ) | +ucx_asprintf(ucx_default_allocator(), __VA_ARGS__) | +
Shortcut for ucx_asprintf() with default allocator.
+ +#define ucx_stream_bcopy | +( | ++ | src, | +
+ | + | + | dest, | +
+ | + | + | rfnc, | +
+ | + | + | wfnc, | +
+ | + | + | buf, | +
+ | + | + | bufsize | +
+ | ) | ++ |
Shorthand for an unbounded ucx_stream_bncopy call using the specified buffer.
+src | the source stream |
dest | the destination stream |
rfnc | the read function |
wfnc | the write function |
buf | a pointer to the copy buffer or NULL if a buffer shall be implicitly created on the heap |
bufsize | the size of the copy buffer - if NULL was provided for buf , this is the size of the buffer that shall be implicitly created |
#define ucx_stream_copy | +( | ++ | src, | +
+ | + | + | dest, | +
+ | + | + | rfnc, | +
+ | + | + | wfnc | +
+ | ) | ++ |
Shorthand for an unbounded ucx_stream_bncopy call using a default buffer.
+src | the source stream |
dest | the destination stream |
rfnc | the read function |
wfnc | the write function |
#define ucx_stream_ncopy | +( | ++ | src, | +
+ | + | + | dest, | +
+ | + | + | rfnc, | +
+ | + | + | wfnc, | +
+ | + | + | n | +
+ | ) | ++ |
Shorthand for ucx_stream_bncopy using a default copy buffer.
+src | the source stream |
dest | the destination stream |
rfnc | the read function |
wfnc | the write function |
n | maximum number of bytes that shall be copied |
sstr_t ucx_asprintf | +( | +UcxAllocator * | +allocator, | +
+ | + | const char * | +fmt, | +
+ | + | + | ... | +
+ | ) | ++ |
A printf()
like function which allocates space for a sstr_t the result is written to.
Attention: The sstr_t data is allocated with the allocators ucx_allocator_malloc() function. So it is implementation dependent, if the returned sstr_t.ptr pointer must be passed to the allocators ucx_allocator_free() function manually.
+Note: The sstr_t.ptr of the return value will always be NULL
-terminated.
allocator | the UcxAllocator used for allocating the result sstr_t |
fmt | format string |
... | additional arguments |
int ucx_cmp_double | +( | +const void * | +d1, | +
+ | + | const void * | +d2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two real numbers of type double.
+d1 | pointer to double one |
d2 | pointer to double two |
data | if provided: a pointer to precision (default: 1e-14) |
int ucx_cmp_float | +( | +const void * | +f1, | +
+ | + | const void * | +f2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two real numbers of type float.
+f1 | pointer to float one |
f2 | pointer to float two |
data | if provided: a pointer to precision (default: 1e-6f) |
int ucx_cmp_int | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type int.
+i1 | pointer to integer one |
i2 | pointer to integer two |
data | omitted |
int ucx_cmp_int16 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type int16_t.
+i1 | pointer to int16_t one |
i2 | pointer to int16_t two |
data | omitted |
int ucx_cmp_int32 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type int32_t.
+i1 | pointer to int32_t one |
i2 | pointer to int32_t two |
data | omitted |
int ucx_cmp_int64 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type int64_t.
+i1 | pointer to int64_t one |
i2 | pointer to int64_t two |
data | omitted |
int ucx_cmp_longint | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type long int.
+i1 | pointer to long integer one |
i2 | pointer to long integer two |
data | omitted |
int ucx_cmp_longlong | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type long long.
+i1 | pointer to long long one |
i2 | pointer to long long two |
data | omitted |
int ucx_cmp_mem | +( | +const void * | +ptr1, | +
+ | + | const void * | +ptr2, | +
+ | + | void * | +n | +
+ | ) | ++ |
Compares two memory areas.
+ptr1 | pointer one |
ptr2 | pointer two |
n | a pointer to the size_t containing the third parameter for memcmp |
int ucx_cmp_ptr | +( | +const void * | +ptr1, | +
+ | + | const void * | +ptr2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two pointers.
+ptr1 | pointer one |
ptr2 | pointer two |
data | omitted |
int ucx_cmp_sstr | +( | +const void * | +s1, | +
+ | + | const void * | +s2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Wraps the sstrcmp function.
+s1 | sstr one |
s2 | sstr two |
data | ignored |
int ucx_cmp_str | +( | +const void * | +s1, | +
+ | + | const void * | +s2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Wraps the strcmp function.
+s1 | string one |
s2 | string two |
data | omitted |
int ucx_cmp_strn | +( | +const void * | +s1, | +
+ | + | const void * | +s2, | +
+ | + | void * | +n | +
+ | ) | ++ |
Wraps the strncmp function.
+s1 | string one |
s2 | string two |
n | a pointer to the size_t containing the third strncmp parameter |
int ucx_cmp_uint | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type unsigned int.
+i1 | pointer to unsigned integer one |
i2 | pointer to unsigned integer two |
data | omitted |
int ucx_cmp_uint16 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type uint16_t.
+i1 | pointer to uint16_t one |
i2 | pointer to uint16_t two |
data | omitted |
int ucx_cmp_uint32 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type uint32_t.
+i1 | pointer to uint32_t one |
i2 | pointer to uint32_t two |
data | omitted |
int ucx_cmp_uint64 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type uint64_t.
+i1 | pointer to uint64_t one |
i2 | pointer to uint64_t two |
data | omitted |
int ucx_cmp_ulongint | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type unsigned long int.
+i1 | pointer to unsigned long integer one |
i2 | pointer to unsigned long integer two |
data | omitted |
int ucx_cmp_ulonglong | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Compares two integers of type unsigned long long.
+i1 | pointer to unsigned long long one |
i2 | pointer to unsigned long long two |
data | omitted |
intmax_t ucx_dist_int | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type int.
+i1 | pointer to integer one |
i2 | pointer to integer two |
data | omitted |
intmax_t ucx_dist_int16 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type int16_t.
+i1 | pointer to int16_t one |
i2 | pointer to int16_t two |
data | omitted |
intmax_t ucx_dist_int32 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type int32_t.
+i1 | pointer to int32_t one |
i2 | pointer to int32_t two |
data | omitted |
intmax_t ucx_dist_int64 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type int64_t.
+i1 | pointer to int64_t one |
i2 | pointer to int64_t two |
data | omitted |
intmax_t ucx_dist_longint | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type long int.
+i1 | pointer to long integer one |
i2 | pointer to long integer two |
data | omitted |
intmax_t ucx_dist_longlong | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type long long.
+i1 | pointer to long long one |
i2 | pointer to long long two |
data | omitted |
intmax_t ucx_dist_uint | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type unsigned int.
+i1 | pointer to unsigned integer one |
i2 | pointer to unsigned integer two |
data | omitted |
intmax_t ucx_dist_uint16 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type uint16_t.
+i1 | pointer to uint16_t one |
i2 | pointer to uint16_t two |
data | omitted |
intmax_t ucx_dist_uint32 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type uint32_t.
+i1 | pointer to uint32_t one |
i2 | pointer to uint32_t two |
data | omitted |
intmax_t ucx_dist_uint64 | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type uint64_t.
+i1 | pointer to uint64_t one |
i2 | pointer to uint64_t two |
data | omitted |
intmax_t ucx_dist_ulongint | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type unsigned long int.
+i1 | pointer to unsigned long integer one |
i2 | pointer to unsigned long integer two |
data | omitted |
intmax_t ucx_dist_ulonglong | +( | +const void * | +i1, | +
+ | + | const void * | +i2, | +
+ | + | void * | +data | +
+ | ) | ++ |
Distance function for integers of type unsigned long long.
+i1 | pointer to unsigned long long one |
i2 | pointer to unsigned long long two |
data | omitted |
int ucx_fprintf | +( | +void * | +stream, | +
+ | + | write_func | +wfc, | +
+ | + | const char * | +fmt, | +
+ | + | + | ... | +
+ | ) | ++ |
A printf()
like function which writes the output to a stream by using a write_func().
stream | the stream the data is written to |
wfc | the write function |
fmt | format string |
... | additional arguments |
void* ucx_memcpy | +( | +const void * | +m, | +
+ | + | void * | +n | +
+ | ) | ++ |
Copies a memory area.
+m | a pointer to the memory area |
n | a pointer to the size_t containing the size of the memory area |
void* ucx_strcpy | +( | +const void * | +s, | +
+ | + | void * | +data | +
+ | ) | ++ |
Copies a string.
+s | the string to copy |
data | omitted |
size_t ucx_stream_bncopy | +( | +void * | +src, | +
+ | + | void * | +dest, | +
+ | + | read_func | +rfnc, | +
+ | + | write_func | +wfnc, | +
+ | + | char * | +buf, | +
+ | + | size_t | +bufsize, | +
+ | + | size_t | +n | +
+ | ) | ++ |
Reads data from a stream and writes it to another stream.
+src | the source stream |
dest | the destination stream |
rfnc | the read function |
wfnc | the write function |
buf | a pointer to the copy buffer or NULL if a buffer shall be implicitly created on the heap |
bufsize | the size of the copy buffer - if NULL was provided for buf , this is the size of the buffer that shall be implicitly created |
n | the maximum number of bytes that shall be copied |
sstr_t ucx_vasprintf | +( | +UcxAllocator * | +allocator, | +
+ | + | const char * | +fmt, | +
+ | + | va_list | +ap | +
+ | ) | ++ |
va_list
version of ucx_asprintf().
allocator | the UcxAllocator used for allocating the result sstr_t |
fmt | format string |
ap | argument list |
int ucx_vfprintf | +( | +void * | +stream, | +
+ | + | write_func | +wfc, | +
+ | + | const char * | +fmt, | +
+ | + | va_list | +ap | +
+ | ) | ++ |
va_list
version of ucx_fprintf().
stream | the stream the data is written to |
wfc | the write function |
fmt | format string |
ap | argument list |