StdCPtr BytCopy(StdCPtr bytes, long len)  |  copies 'len' bytes of byte array 'bytes'; allocs memory  | 
c_bstring BytToBStrCopy(StdCPtr bytes, long len)  |  constructs a binary string from 'len' bytes of byte array 'bytes'; allocs memory  | 
c_string BytToHStrCopy(StdCPtr bytes, long len)  |  creates a hex string from 'len' bytes of byte array 'bytes'; allocs memory  | 
c_string BStrToHStrCopy(c_bstring bstr)  |  creates a hex string from binary string 'bstr'; allocs memory  | 
c_bool IsSpaceStr(c_string s)  |  whether string 's' is empty or only contains space characters  | 
size_t WCStrLen(wc_string ws)  |  number of wide characters in string 'ws' ( without the termination character )  | 
wc_string SubWCStrCopy(wc_string str, long len)  |  copies 'len' wide characters of string 'str'; appends 0, allocs memory  | 
wc_string WCStrCopy(wc_string Str)  |  copies wide character string 'Str'; allocs memory  | 
c_string WCToStrCopy(wc_string wc)  |  copies wide character string 'wc' into a string; without conversion, allocs memory  | 
wc_string WCStrToLower(wc_string st)  |  converts all letters in wide character string 'st' to lower case  | 
wc_string WCStrToUpper(wc_string st)  |  converts all letters in wide character string 'st' to upper case  | 
c_string SubStrCopy(c_string str, long len)  |  copies 'len' characters of string 'str'; appends 0, allocs memory  | 
c_string StrCopy(c_string Str)  | copies string 'Str'; allocs memory | 
c_string StrToLower(c_string st)  |  converts all letters in string 'st' to lower case  | 
c_string StrToUpper(c_string st)  |  converts all letters in string 'st' to upper case  | 
Any_T* MakeArgLst(va_list args, int fixed_cnt, ...)  |  MakeArgLst is a portable replacement for GetArgLst coping with the * idiosyncracies of different va_list implementations. Since there is * no portable way to pass a va_list (caller's variable arguments) * through '...', it has to be moved before the caller's fixed args. * fixed_cnt is the count of the caller's fixed arguments. * * Sample usage: * variadic_func(int argcnt, TYPEA a, TYPEB b, TYPEC c, ...) * { * va_list va; * Any_T *argl; * va_start(va,c); // Must use the *last* fixed argument here * argl = MakeArgLst(va, 4, argcnt, a, b, c); * va_end(va); * // make use of argl * FreeMem(argl); * } * * For an in depth discussion of variadic functions including * portability, see libc.info Node: Variadic Functions.  | 
wc_string wcsstr_aux(wc_string s1, wc_string s2)  |  workaround for 'wcsstr'  | 
c_string strstr_aux(c_string s1, c_string s2)  | workaround for 'strstr' | 
wc_string wcschr_aux(wc_string s, wc_char c)  | workaround for 'wcschr' | 
c_string strchr_aux(c_string s, int c)  | workaround for 'strchr' | 
wc_string wcsrchr_aux(wc_string s, wc_char c)  | workaround for 'wcsrchr' | 
c_string strrchr_aux(c_string s, int c)  | workaround for 'strrchr' | 
int strcspn_aux(c_string s, c_string reject)  | workaround for 'strcspn' | 
StdCPtr memcpy_aux(StdCPtr dst, StdCPtr src, int n)  |  workaround for 'memcpy'  | 
int memcmp_aux(StdCPtr dst, StdCPtr src, int n)  | workaround for 'memcmp' | 
c_string getcwd_aux(c_string buffer, int bufsize)  |  workaround for 'getcwd'; evaluates $PWD  | 
c_string GetSystemError(void)  | system error message; allocs memory | 
c_string GetSystemError_noalloc(c_string buffer, int bufsize)  |  system error message  | 
#define STD_CMD_NOWAIT 0 #define STD_CMD_WAIT_INIT 1 #define STD_CMD_WAIT 2
int runprg(c_string cmd, int cmdflg)  |  executes program 'cmd' cmdflg=STD_CMD_NOWAIT --> asynchron, non-blocking cmdflg=STD_CMD_WAIT_INIT --> waits for initialisation cmdflg=STD_CMD_WAIT --> synchron, blocking  | 
typedef StdCPtr (*PCFUN)();
StdCPtr apply_fun_portable(PCFUN f, int cnt, StdCPtr* args)  |  portable dynamic call of C-function 'f' with 'cnt' parameters in 'args' ( upto 9 parameters )  | 
StdCPtr apply_fun(PCFUN f, int cnt, StdCPtr* args)  |  dynamic call of C-function 'f' with 'cnt' parameters in 'args' ( restricted to intel )  | 
| DL_Hdl | Abstract handle type | 
#define DL_LOAD_LAZY 0
#if !defined(STYX_CONFIG_OSMS) && (!defined(HAVE_CONFIG_H) || (defined(HAVE_LIBDL) && defined(HAVE_DLFCN_H))) #define DL_LAZY RTLD_LAZY #define DL_NOW RTLD_NOW #define DL_BINDING_MASK RTLD_BINDING_MASK #define DL_GLOBAL RTLD_GLOBAL #define DL_LOCAL RTLD_LOCAL #else #define DL_LAZY 0 #define DL_NOW 0 #define DL_BINDING_MASK 0 #define DL_GLOBAL 0 #define DL_LOCAL 0 #endif
DL_Hdl DL_open(c_string dlname, int flag)  |  loads dll 'dlname' in mode 'flag' ( ERROR: NULL ) LINUX: flag=RTLD_LAZY|RTLD_NOW|-1=RTLD_NOW, MS: not used  | 
int DL_close(DL_Hdl dlhdl)  |  detaches dll 'dlhdl' ( SUCCESS: 0, ERROR: > 0 )  | 
StdCPtr DL_symbol(DL_Hdl dlhdl, c_string symname)  |  address of symbol 'symname' within dll 'dlhdl' ( ERROR: NULL ) LINUX: function|data, MS: function  | 
c_string DL_error(void)  | dll load error; allocs memory | 
c_string DL_error_noalloc(c_string buffer, int bufsize)  | dll load error | 
c_string UserName(void)  | login name; allocs memory |