diff options
author | Norbert Preining <norbert@preining.info> | 2020-10-12 03:04:00 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2020-10-12 03:04:00 +0000 |
commit | 0ce40abb18ec02ec6fd6bcc5f21612c88daa7578 (patch) | |
tree | 416289fe1448873fd8ca33051f50ad85bffa8aaa /support/dktools/dk4maowd.c | |
parent | fdb18507cd80dc17f5a5256153d34668b4f4e61c (diff) |
CTAN sync 202010120303
Diffstat (limited to 'support/dktools/dk4maowd.c')
-rw-r--r-- | support/dktools/dk4maowd.c | 181 |
1 files changed, 0 insertions, 181 deletions
diff --git a/support/dktools/dk4maowd.c b/support/dktools/dk4maowd.c deleted file mode 100644 index 1d64d3e839..0000000000 --- a/support/dktools/dk4maowd.c +++ /dev/null @@ -1,181 +0,0 @@ -/* -Copyright (C) 2015-2020, Dirk Krause -SPDX-License-Identifier: BSD-3-Clause -*/ - -/* - WARNING: This file was generated by the dkct program (see - http://dktools.sourceforge.net/ for details). - Changes you make here will be lost if dkct is run again! - You should modify the original source and run dkct on it. - Original source: dk4maowd.ctr -*/ - -/** @file dk4maowd.c The dk4maowd module. -*/ - - -#line 83 "dk4maowd.ctr" - - -#include "dk4conf.h" - -#if DK4_HAVE_ASSERT_H -#ifndef ASSERT_H_INCLUDED -#include <assert.h> -#define ASSERT_H_INCLUDED 1 -#endif -#endif - -#include "dk4maowd.h" -#include "dk4numco.h" -#include "dk4numl.h" - - - - - -#line 101 "dk4maowd.ctr" - - - -int -dk4ma_write_wc_decimal_unsigned( - wchar_t *dptr, size_t sz, dk4_um_t val, size_t padsz, dk4_er_t *erp -) -{ - char buf[4*sizeof(dk4_um_t) + 16]; /* Buffer */ - size_t used = 0; /* Number of used characters */ - size_t i = 0; /* Copy buffer to destination */ - int cc = 1; /* Flag: Can continue */ - int err = 0; /* Flag: Error occued */ - int back = 0; /* Function result */ - -#if DK4_USE_ASSERT - assert(NULL != dptr); - assert(0 < sz); -#endif - if ((NULL != dptr) && (0 < sz)) { - *dptr = L'\0'; - } - if (1 == padsz) { - padsz = dk4numlength(sizeof(dk4_um_t), 0); - } - if ((NULL != dptr) && (0 < sz) && (padsz < sz)) { - do { - switch((int)(val % (dk4_um_t)10UL)) { - case 0: { - if(used < sizeof(buf)) { buf[used++] = '0'; } else { err = 1; } - } break; - case 1: { - if(used < sizeof(buf)) { buf[used++] = '1'; } else { err = 1; } - } break; - case 2: { - if(used < sizeof(buf)) { buf[used++] = '2'; } else { err = 1; } - } break; - case 3: { - if(used < sizeof(buf)) { buf[used++] = '3'; } else { err = 1; } - } break; - case 4: { - if(used < sizeof(buf)) { buf[used++] = '4'; } else { err = 1; } - } break; - case 5: { - if(used < sizeof(buf)) { buf[used++] = '5'; } else { err = 1; } - } break; - case 6: { - if(used < sizeof(buf)) { buf[used++] = '6'; } else { err = 1; } - } break; - case 7: { - if(used < sizeof(buf)) { buf[used++] = '7'; } else { err = 1; } - } break; - case 8: { - if(used < sizeof(buf)) { buf[used++] = '8'; } else { err = 1; } - } break; - case 9: { - if(used < sizeof(buf)) { buf[used++] = '9'; } else { err = 1; } - } break; - } - val = val / (dk4_um_t)10UL; - if ((dk4_um_t)0UL == val) { cc = 0; } - } while((1 == cc) && (0 == err)); - if (0 == err) { - if (used < sz) { - if ((0 < padsz) && (used < padsz)) { - for (i = 0; i < (padsz - used); i++) { - dptr[i] = L'0'; - } - for (i = 0; i < used; i++) { - dptr[padsz - 1 - i] = buf[i]; - } - dptr[padsz] = L'\0'; - back = 1; - } else { - for (i = 0; i < used; i++) { - dptr[i] = (wchar_t)(buf[used - 1 - i]); - } - dptr[used] = L'\0'; - back = 1; - } - } else { - dk4error_set_simple_error_code(erp, DK4_E_BUFFER_TOO_SMALL); - } - } else { - dk4error_set_simple_error_code(erp, DK4_E_BUG); - } - } else { - dk4error_set_simple_error_code(erp, DK4_E_INVALID_ARGUMENTS); - } - return back; -} - - - -int -dk4ma_write_wc_decimal_signed( - wchar_t *dptr, size_t sz, dk4_im_t val, size_t padsz, dk4_er_t *erp -) -{ - int back = 0; -#if DK4_USE_ASSERT - assert(NULL != dptr); - assert(0 < sz); -#endif - if ((NULL != dptr) && (0 < sz)) { - *dptr = L'\0'; - } - if (1 == padsz) { - padsz = dk4numlength(sizeof(dk4_im_t), 1); - } - if ((NULL != dptr) && (0 < sz) && (padsz < sz)) { - if ((dk4_im_t)0L <= val) { - back = dk4ma_write_wc_decimal_unsigned( - dptr, sz, (dk4_um_t)val, padsz, erp - ); - } else { - if (2 < sz) { - *(dptr++) = L'-'; sz--; - if (DK4_IM_MIN == val) { - back = dk4ma_write_wc_decimal_unsigned( - dptr, sz, - ((dk4_um_t)(DK4_IM_MAX) + (dk4_um_t)1UL), - ((0 < padsz) ? (padsz - 1) : 0), - erp - ); - } else { - back = dk4ma_write_wc_decimal_unsigned( - dptr, sz, - (dk4_um_t)((dk4_im_t)0L - val), - ((0 < padsz) ? (padsz - 1) : 0), - erp - ); - } - } else { - dk4error_set_simple_error_code(erp, DK4_E_BUFFER_TOO_SMALL); - } - } - } else { - dk4error_set_simple_error_code(erp, DK4_E_INVALID_ARGUMENTS); - } - return back; -} - |