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/dk4tsp32.h | |
parent | fdb18507cd80dc17f5a5256153d34668b4f4e61c (diff) |
CTAN sync 202010120303
Diffstat (limited to 'support/dktools/dk4tsp32.h')
-rw-r--r-- | support/dktools/dk4tsp32.h | 257 |
1 files changed, 0 insertions, 257 deletions
diff --git a/support/dktools/dk4tsp32.h b/support/dktools/dk4tsp32.h deleted file mode 100644 index e66ec012b1..0000000000 --- a/support/dktools/dk4tsp32.h +++ /dev/null @@ -1,257 +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: dk4tsp32.ctr -*/ - -#ifndef DK4TSP32_H_INCLUDED -/** Avoid multiple inclusions. */ -#define DK4TSP32_H_INCLUDED 1 - - -#line 10 "dk4tsp32.ctr" - -/** @file - Text stream processing for 32 bit characters. - - CRT on Windows: Optional. -*/ - -#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 DK4BOM_H_INCLUDED -#if DK4_BUILDING_DKTOOLS4 -#include "dk4bom.h" -#else -#include <dktools-4/dk4bom.h> -#endif -#endif - -#ifndef DK4TSP_H_INCLUDED -#if DK4_BUILDING_DKTOOLS4 -#include "dk4tsp.h" -#else -#include <dktools-4/dk4tsp.h> -#endif -#endif - -#ifndef DK4UTF8_H_INCLUDED -#if DK4_BUILDING_DKTOOLS4 -#include "dk4utf8.h" -#else -#include <dktools-4/dk4utf8.h> -#endif -#endif - -#ifndef DK4UTF16_H_INCLUDED -#if DK4_BUILDING_DKTOOLS4 -#include "dk4utf16.h" -#else -#include <dktools-4/dk4utf16.h> -#endif -#endif - -#ifndef DK4C32_H_INCLUDED -#if DK4_BUILDING_DKTOOLS4 -#include "dk4c32.h" -#else -#include <dktools-4/dk4c32.h> -#endif -#endif - -/** Handler function for single characters. - @param obj Object to modify while processing the character. - @param c Character to process. - @param pos Current position in file or data stream. - @param erp Error report, may be NULL. - @return DK4_TSP_RES_OK if the character was processed - successfully, - DK4_TSP_RES_ERROR if there was an error but we can - continue, - DK4_TSP_RES_FATAL if there was a fatal error so we - should abort processing. -*/ -typedef int dk4_c32_handler_t( - void *obj, - dk4_c32_t c, - dk4_text_stream_position_t *pos, - dk4_er_t *erp -); - -/** Handler function for text lines. - @param obj Object to modify while processing the character. - @param line Text line to process. - @param lineno Current line number. - @param erp Error report, may be NULL. - @return DK4_TSP_RES_OK if the character was processed - successfully, - DK4_TSP_RES_ERROR if there was an error but we can - continue, - DK4_TSP_RES_FATAL if there was a fata error so we - should abort processing. -*/ -typedef int dk4_c32_line_handler_t( - void *obj, - dk4_c32_t *line, - dk4_um_t lineno, - dk4_er_t *erp -); - -/** Structure for 32 bit character processing. -*/ -typedef struct { - union { - dk4_utf8_decoder_t u08; /**< UTF-8 decoder. */ - dk4_utf16_byte_decoder_t u16; /**< UTF-16 decoder. */ - dk4_c32_byte_decoder_t c32; /**< 32 bit char decoder. */ - } dec; /**< Input decoder. */ - dk4_bom_detector_t bomd; /**< BOM detector. */ - dk4_text_stream_position_t pos; /**< Current position. */ - dk4_er_t er_en; /**< Errors in input decoding. */ - dk4_er_t er_pr; /**< Errors in processing. */ - union { - dk4_c32_line_handler_t *lh; /**< Handler function for lines. */ - dk4_c32_handler_t *ch; /**< Handler function for char. */ - } fct; /**< Handler function. */ - dk4_c32_t *inbuf; /**< Buffer for input line. */ - void *obj; /**< Object to modify in processing. */ - size_t in_sz; /**< Size of input line buffer. */ - size_t in_us; /**< Used bytes in input line buffer. */ - int ief; /**< Input encoding found. */ - int iee; /**< Input encoding expected. */ - int pst; /**< Processing stage. */ -} dk4_tsp32_t; - - - -#ifdef __cplusplus -extern "C" { -#endif - -/** Set up processor for byte by byte processing. - @param tsp Processor to set up. - @param obj Object to modify when processing input, may be NULL. - @param fct Handler function to call for each character. - @param eie Expected input encoding. - @param erp Error report, may be NULL. - @return 1 on success, 0 on error. -*/ -int -dk4tsp32_setup_char( - dk4_tsp32_t *tsp, - void *obj, - dk4_c32_handler_t *fct, - int eie, - dk4_er_t *erp -); - -/** Set up processor for line processing. - @param tsp Processor to set up. - @param obj Object to modify when processing input, may be NULL. - @param fct Handler function to invoke for each line. - @param inbuf Input line buffer. - @param szin Size of input line buffer (number of dk4_c32_t). - @param eie Expected input encoding. - @param erp Error report, may be NULL. - @return 1 on success, 0 on error. -*/ -int -dk4tsp32_setup_line( - dk4_tsp32_t *tsp, - void *obj, - dk4_c32_line_handler_t *fct, - dk4_c32_t *inbuf, - size_t szin, - int eie, - dk4_er_t *erp -); - -/** Add one single byte. - @param tsp Text stream processor. - @param inbyte Byte to process. - @return DK4_TSP_RES_OK if the character was processed - successfully, - DK4_TSP_RES_ERROR if there was an error but we can - continue, - DK4_TSP_RES_FATAL if there was a fata error so we - should abort processing. -*/ -int -dk4tsp32_add_one_byte( - dk4_tsp32_t *tsp, - unsigned char inbyte -); - -/** Add multiple bytes. - @param tsp Text stream processor. - @param buffer Buffer start address. - @param sz Number of bytes in buffer. - @return DK4_TSP_RES_OK if the character was processed - successfully, - DK4_TSP_RES_ERROR if there was an error but we can - continue, - DK4_TSP_RES_FATAL if there was a fata error so we - should abort processing. -*/ -int -dk4tsp32_add_bytes( - dk4_tsp32_t *tsp, - const unsigned char *buffer, - size_t sz -); - -/** Finish processing. - @param tsp Text stream processor. - @return DK4_TSP_RES_OK if processing was finished - successfully, - DK4_TSP_RES_ERROR if there was an error, - DK4_TSP_RES_FATAL if there was a fatal error. -*/ -int -dk4tsp32_finish(dk4_tsp32_t *tsp); - -/** Retrieve error reports for encoding/decoding and processing. - @param er_en Destination error report buffer for encoding/decoding. - @param er_pr Destination error report buffer for processing. - @param tsp Text stream processor to retrieve errors from. -*/ -void -dk4tsp32_get_errors(dk4_er_t *er_en, dk4_er_t *er_pr, dk4_tsp32_t const *tsp); - -#ifdef __cplusplus -} -#endif - - - - -#endif |