%% options
copyright owner = Dirk Krause
copyright year = 2015-xxxx
license = bsd
%% header
/** @file
Double to dkChar text conversion using more secure functions than
swprintf() or sprintf() if available.
CRT on Windows: Required.
*/
#ifndef DK4CONF_H_INCLUDED
#include "dk4conf.h"
#endif
#ifndef DK4TYPES_H_INCLUDED
#include "dk4types.h"
#endif
#ifndef DK4ERROR_H_INCLUDED
#include "dk4error.h"
#endif
#ifdef __cplusplus
extern "C" {
#endif
/** Convert double value to string.
@param dptr Destination buffer pointer.
@param szdptr Size of destination buffer (number of dkChar).
@param v Value to convert.
@param erp Error report, may be NULL.
@return 1 on success, 0 on error.
Error codes:
- DK4_E_INVALID_ARGUMENTS
if dptr is NULL or szdptr is less than 2,
- DK4_E_BUFFER_TOO_SMALL
if the destination buffer is too small to store the string.
*/
int
dk4double_to_string(dkChar *dptr, size_t szdptr, double v, dk4_er_t *erp);
#ifdef __cplusplus
}
#endif
%% module
#include "dk4dbldk.h"
#if DK4_CHAR_SIZE > 1
#include "dk4dblwc.h"
#else
#include "dk4dblc8.h"
#endif
int
dk4double_to_string(dkChar *dptr, size_t szdptr, double v, dk4_er_t *erp)
{
#if DK4_CHAR_SIZE > 1
return (dk4double_to_string_wc(dptr, szdptr, v, erp));
#else
return (dk4double_to_string_c8(dptr, szdptr, v, erp));
#endif
}