diff options
Diffstat (limited to 'newlib/libc/sys/linux/include/gconv.h')
-rw-r--r-- | newlib/libc/sys/linux/include/gconv.h | 175 |
1 files changed, 0 insertions, 175 deletions
diff --git a/newlib/libc/sys/linux/include/gconv.h b/newlib/libc/sys/linux/include/gconv.h deleted file mode 100644 index 64df45bf5..000000000 --- a/newlib/libc/sys/linux/include/gconv.h +++ /dev/null @@ -1,175 +0,0 @@ -/* Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -/* This header provides no interface for a user to the internals of - the gconv implementation in the libc. Therefore there is no use - for these definitions beside for writing additional gconv modules. */ - -#ifndef _GCONV_H -#define _GCONV_H 1 - -#include <features.h> -#define __need_mbstate_t -#include <wchar.h> -#define __need_size_t -#define __need_wchar_t -#include <stddef.h> - -/* ISO 10646 value used to signal invalid value. */ -#define __UNKNOWN_10646_CHAR ((wchar_t) 0xfffd) - -/* Error codes for gconv functions. */ -enum -{ - __GCONV_OK = 0, - __GCONV_NOCONV, - __GCONV_NODB, - __GCONV_NOMEM, - - __GCONV_EMPTY_INPUT, - __GCONV_FULL_OUTPUT, - __GCONV_ILLEGAL_INPUT, - __GCONV_INCOMPLETE_INPUT, - - __GCONV_ILLEGAL_DESCRIPTOR, - __GCONV_INTERNAL_ERROR -}; - - -/* Flags the `__gconv_open' function can set. */ -enum -{ - __GCONV_IS_LAST = 0x0001, - __GCONV_IGNORE_ERRORS = 0x0002 -}; - - -/* Forward declarations. */ -struct __gconv_step; -struct __gconv_step_data; -struct __gconv_loaded_object; -struct __gconv_trans_data; - - -/* Type of a conversion function. */ -typedef int (*__gconv_fct) (struct __gconv_step *, struct __gconv_step_data *, - __const unsigned char **, __const unsigned char *, - unsigned char **, size_t *, int, int); - -/* Constructor and destructor for local data for conversion step. */ -typedef int (*__gconv_init_fct) (struct __gconv_step *); -typedef void (*__gconv_end_fct) (struct __gconv_step *); - - -/* Type of a transliteration/transscription function. */ -typedef int (*__gconv_trans_fct) (struct __gconv_step *, - struct __gconv_step_data *, void *, - __const unsigned char *, - __const unsigned char **, - __const unsigned char *, unsigned char **, - size_t *); - -/* Function to call to provide transliteration module with context. */ -typedef int (*__gconv_trans_context_fct) (void *, __const unsigned char *, - __const unsigned char *, - unsigned char *, unsigned char *); - -/* Function to query module about supported encoded character sets. */ -typedef int (*__gconv_trans_query_fct) (__const char *, __const char ***, - size_t *); - -/* Constructor and destructor for local data for transliteration. */ -typedef int (*__gconv_trans_init_fct) (void **, const char *); -typedef void (*__gconv_trans_end_fct) (void *); - -struct __gconv_trans_data -{ - /* Transliteration/Transscription function. */ - __gconv_trans_fct __trans_fct; - __gconv_trans_context_fct __trans_context_fct; - __gconv_trans_end_fct __trans_end_fct; - void *__data; - struct __gconv_trans_data *__next; -}; - - -/* Description of a conversion step. */ -struct __gconv_step -{ - struct __gconv_loaded_object *__shlib_handle; - __const char *__modname; - - int __counter; - - char *__from_name; - char *__to_name; - - __gconv_fct __fct; - __gconv_init_fct __init_fct; - __gconv_end_fct __end_fct; - - /* Information about the number of bytes needed or produced in this - step. This helps optimizing the buffer sizes. */ - int __min_needed_from; - int __max_needed_from; - int __min_needed_to; - int __max_needed_to; - - /* Flag whether this is a stateful encoding or not. */ - int __stateful; - - void *__data; /* Pointer to step-local data. */ -}; - -/* Additional data for steps in use of conversion descriptor. This is - allocated by the `init' function. */ -struct __gconv_step_data -{ - unsigned char *__outbuf; /* Output buffer for this step. */ - unsigned char *__outbufend; /* Address of first byte after the output - buffer. */ - - /* Is this the last module in the chain. */ - int __flags; - - /* Counter for number of invocations of the module function for this - descriptor. */ - int __invocation_counter; - - /* Flag whether this is an internal use of the module (in the mb*towc* - and wc*tomb* functions) or regular with iconv(3). */ - int __internal_use; - - mbstate_t *__statep; - mbstate_t __state; /* This element must not be used directly by - any module; always use STATEP! */ - - /* Transliteration information. */ - struct __gconv_trans_data *__trans; -}; - - -/* Combine conversion step description with data. */ -typedef struct __gconv_info -{ - size_t __nsteps; - struct __gconv_step *__steps; - __extension__ struct __gconv_step_data __data __flexarr; -} *__gconv_t; - -#endif /* gconv.h */ |