summaryrefslogtreecommitdiff
path: root/support/dktools/dk4utf8.h
diff options
context:
space:
mode:
Diffstat (limited to 'support/dktools/dk4utf8.h')
-rw-r--r--support/dktools/dk4utf8.h147
1 files changed, 0 insertions, 147 deletions
diff --git a/support/dktools/dk4utf8.h b/support/dktools/dk4utf8.h
deleted file mode 100644
index fd25dba758..0000000000
--- a/support/dktools/dk4utf8.h
+++ /dev/null
@@ -1,147 +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: dk4utf8.ctr
-*/
-
-#ifndef DK4UTF8_H_INCLUDED
-/** Avoid multiple inclusions. */
-#define DK4UTF8_H_INCLUDED 1
-
-
-#line 10 "dk4utf8.ctr"
-
-/** @file
- UTF-8 decoding and encoding.
-
-To decode an UTF-8 encoded data stream, use a dk4_utf8_decoder_t object.
-Use dk4utf8_init() to initialize the object before you start decoding.
-For each byte from the data stream use dk4utf8_add(). Possible
-return values are DK4_EDSTM_ACCEPT, DK4_EDSTM_FINISHED,
-and DK4_EDSTM_ERROR.
-DK4_EDSTM_ACCEPT indicates the byte was processed successfully,
-but more bytes are required to complete the UNICODE character.
-DK4_EDSTM_FINISHED indicates an UNICODE character was completed,
-use dk4utf8_get() to retrieve it.
-DK4_EDSTM_ERROR indicates an error, invalid input.
-
-The older RFC2279 allows a wider range of UNICODE characters,
-RFC3629 restricts the UNICODE character range to 0x0010FFFF.
-Routines in this module use the range defined by RFC2279.
-To be RFC3629 compliant, check UNICODE values and make sure
-to use the range 0...0x0010FFFF only.
-
-CRT on Windows: Not used.
-*/
-
-
-#ifndef DK4CONF_H_INCLUDED
-#if DK4_BUILDING_DKTOOLS4
-#include "dk4conf.h"
-#else
-#include <dktools-4/dk4conf.h>
-#endif
-#endif
-
-#ifndef DK4TYPES_H_INCLUDED
-#if DK4_BUILDING_DKTOOLS4
-#include "dk4types.h"
-#else
-#include <dktools-4/dk4types.h>
-#endif
-#endif
-
-#ifndef DK4ERROR_H_INCLUDED
-#if DK4_BUILDING_DKTOOLS4
-#include "dk4error.h"
-#else
-#include <dktools-4/dk4error.h>
-#endif
-#endif
-
-#ifndef DK4DEC_H_INCLUDED
-#if DK4_BUILDING_DKTOOLS4
-#include "dk4edstm.h"
-#else
-#include <dktools-4/dk4edstm.h>
-#endif
-#endif
-
-
-/** State machine to decode UTF-8 encoded data byte by byte.
-*/
-typedef struct {
- dk4_c32_t uc; /**< Unicode character to produce. */
- int bfc; /**< Bytes needed for character. */
- int bfn; /**< Bytes already found. */
-} dk4_utf8_decoder_t;
-
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** Initialize the UTF-8 decoder.
- @param ptr Decoder to initialize.
-*/
-void
-dk4utf8_init(dk4_utf8_decoder_t *ptr);
-
-/** Add one byte to the decoder.
- @param ptr Decoder to use.
- @param byte Byte to add.
- @return Operation result, one from:
- DK4_EDSTM_ACCEPT if the byte was added to the next output
- without completing output,
- DK4_EDSTM_FINISHED if the byte was added to the next output
- completing the output, or
- DK4_EDSTM_ERROR on error.
-*/
-int
-dk4utf8_add(dk4_utf8_decoder_t *ptr, unsigned char byte);
-
-/** Retrieve a completed Unicode character from the decoder.
- @param ptr Decoder to obtain character from.
-*/
-dk4_c32_t
-dk4utf8_get(dk4_utf8_decoder_t const *ptr);
-
-/** Check whether the decoder is empty.
- @param ptr Decoder to check.
- @return 1 on success, 0 on error.
-*/
-int
-dk4utf8_is_empty(dk4_utf8_decoder_t const *ptr);
-
-/** UTF-8 encode UNICODE character.
- @param rb Result buffer, at least 7 bytes.
- @param pszrb Size of result buffer, in: available, out: used.
- @param c Character to encode.
- @param erp Error report, may be NULL.
- @return 1 on success, 0 on error.
-
- Error codes:
- - DK4_E_INVALID_ARGUMENTS<br>
- if rb or pszrb is NULL,
- - DK4_E_BUFFER_TOO_SMALL<br>
- if the size specified in pszrb is less than 7.
-*/
-int
-dk4utf8_encode(unsigned char *rb, size_t *pszrb, dk4_c32_t c, dk4_er_t *erp);
-
-#ifdef __cplusplus
-}
-#endif
-
-
-
-
-#endif