diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /support/dktools/test-ser.c |
Initial commit
Diffstat (limited to 'support/dktools/test-ser.c')
-rw-r--r-- | support/dktools/test-ser.c | 162 |
1 files changed, 162 insertions, 0 deletions
diff --git a/support/dktools/test-ser.c b/support/dktools/test-ser.c new file mode 100644 index 0000000000..f8c9af214f --- /dev/null +++ b/support/dktools/test-ser.c @@ -0,0 +1,162 @@ +/* + WARNING: This file was generated by dkct. + 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: test-ser.ctr +*/ + +/** @file test-ser.c The test-ser module. +*/ + + +#line 1 "test-ser.ctr" + +#include <stdio.h> +#include <stdint.h> +#define _USE_MATH_DEFINES 1 +#include <math.h> + + +#include "dk4mem.h" +#include "dk4serf.h" +#include "dk4userf.h" +#include "dk4app.h" +#include "dk4str8.h" + + + +static const dkChar * const test_ser_help_text[] = { +dkT("This is a test program to create directories."), +NULL + + +#line 20 "test-ser.ctr" +}; + +static const dkChar * const test_ser_license_text[] = { +dkT("Copyright (c) 2014-2016, Dirk Krause"), +dkT("All rights reserved."), +dkT(""), +dkT("Redistribution and use in source and binary forms, with or without"), +dkT("modification, are permitted provided that the following conditions"), +dkT("are met:"), +dkT(""), +dkT("* Redistributions of source code must retain the above copyright notice,"), +dkT(" this list of conditions and the following disclaimer."), +dkT("* Redistributions in binary form must reproduce the above copyright"), +dkT(" notice, this list of conditions and the following disclaimer in the"), +dkT(" documentation and/or other materials provided with the distribution."), +dkT("* Neither the name of the Dirk Krause nor the names of contributors may be"), +dkT(" used to endorse or promote products derived from this software without"), +dkT(" specific prior written permission."), +dkT(""), +dkT("THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS"), +dkT("\"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT"), +dkT("LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR"), +dkT("A PARTICULAR PURPOSE ARE DISCLAIMED."), +dkT(""), +dkT("IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY"), +dkT("DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL"), +dkT("DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS"), +dkT("OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)"), +dkT("HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,"), +dkT("STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN"), +dkT("ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE"), +dkT("POSSIBILITY OF SUCH DAMAGE."), +NULL + + +#line 54 "test-ser.ctr" +}; + +static uint16_t td1[] = { 2U, 4U, 6U, 8U, 1U , 3U, 5U, 7U }; + +static const size_t sztd1 = DK4_SIZEOF(td1,uint16_t); + +static uint32_t td2[] = { 64UL, 66UL, 68UL, 70UL, 65UL, 67UL, 69UL, 71UL}; + +static const size_t sztd2 = DK4_SIZEOF(td2,uint32_t); + +static int16_t td3[] = { 128, 130, 132, 129, 131, 133 }; + +static const size_t sztd3 = DK4_SIZEOF(td3,int16_t); + +static int32_t td4[] = { 256L, 258L, 260L, 257L, 259L, 261L }; + +static double td5[] = { M_PI, (M_PI_2 / 10.0) , (M_PI_4 * 100.0) }; + +static const size_t sztd5 = DK4_SIZEOF(td5,double); + +static const size_t sztd4 = DK4_SIZEOF(td4,int32_t); + +static const dkChar ts[] = { dkT("Dies ist ein Test mit äöüßÄÖÜ blubb.") }; + + +/** Application structure. +*/ +static dk4_app_t *app = NULL; + + +/** Main function. + @param argc Number of command line arguments. + @param argv Command line arguments array. + @return 0 on success, all other values indicate errors. +*/ +#if DK4_CHAR_SIZE > 1 +int wmain(int argc, wchar_t *argv[]) +#else +int main(int argc, char *argv[]) +#endif +{ + char buf[64]; + FILE *fipo; + size_t i; + int exv = EXIT_FAILURE; + int de = 0; + + app = dk4app_open_cmd( + argc, argv, NULL, 0, + dkT("dktools-4-test"), dkT("1.0.0"), + dkT("test-ser.txt"), test_ser_help_text, + test_ser_license_text + ); + if (NULL != app) { + de = dk4app_get_encoding(app); + fipo = fopen("test-ser.out", "wb"); + if (NULL != fipo) { + exv = EXIT_SUCCESS; + for (i = 0; i < sztd1; i++) { + if (0 == dk4serialize_file_uint16_t(fipo, td1[i], NULL)) { + exv = EXIT_FAILURE; + } + } + for (i = 0; i < sztd3; i++) { + if (0 == dk4serialize_file_int16_t(fipo, td3[i], NULL)) { + exv = EXIT_FAILURE; + } + } + if (0 == dk4serialize_file_dk_string(fipo, ts, de, NULL)) { + exv = EXIT_FAILURE; + } + for (i = 0; i < sztd2; i++) { + if (0 == dk4serialize_file_uint32_t(fipo, td2[i], NULL)) { + exv = EXIT_FAILURE; + } + } + for (i = 0; i < sztd4; i++) { + if (0 == dk4serialize_file_int32_t(fipo, td4[i], NULL)) { + exv = EXIT_FAILURE; + } + } + for (i = 0; i < sztd5; i++) { + if (0 == dk4serialize_file_double(fipo, td5[i], NULL)) { + exv = EXIT_FAILURE; + } + } + fclose(fipo); + } + dk4app_close(app); + } + return exv; +} + |