From: Sebastian Hammer Date: Fri, 31 May 1996 09:07:54 +0000 (+0000) Subject: Work on character-sets X-Git-Tag: ZEBRA.1.0~442 X-Git-Url: http://git.indexdata.com/?p=idzebra-moved-to-github.git;a=commitdiff_plain;h=8e3453044933e1ba76fbab75449f625731da3a6b Work on character-sets --- diff --git a/include/charmap.h b/include/charmap.h new file mode 100644 index 0000000..eb397f0 --- /dev/null +++ b/include/charmap.h @@ -0,0 +1,63 @@ +/* + * Copyright (c) 1995, Index Data. + * + * All rights reserved. + * + * Use and redistribution in source or binary form, with or without + * modification, of any or all of this software and documentation is + * permitted, provided that the following conditions are met: + * + * 1. This copyright and permission notice appear with all copies of the + * software and its documentation. Notices of copyright or attribution + * which appear at the beginning of any file must remain unchanged. + * + * 2. The names of Index Data or the individual authors may not be used to + * endorse or promote products derived from this software without specific + * prior written permission. + * + * 3. Source code or binary versions of this software and its + * documentation may be used freely in not-for-profit applications. For + * profit applications - such as providing for-pay database services, + * marketing a product based in whole or in part on this software or its + * documentation, or generally distributing this software or its + * documentation under a different license - requires a commercial + * license from Index Data. The software may be installed and used for + * evaluation purposes in conjunction with a commercial application for a + * trial period no longer than 60 days. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND, + * EXPRESS, IMPLIED, OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY + * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + * IN NO EVENT SHALL INDEX DATA BE LIABLE FOR ANY SPECIAL, INCIDENTAL, + * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR + * NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF + * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE + * OF THIS SOFTWARE. + * + */ + +#ifndef CHARMAP_H +#define CHARMAP_H + +extern const char *CHR_UNKNOWN; +extern const char *CHR_SPACE; +extern const char *CHR_BASE; + +struct chr_t_entry; +typedef struct chr_t_entry chr_t_entry; + +typedef struct chrmaptab +{ + chr_t_entry *input; /* mapping table for input data */ + chr_t_entry *query_equiv; /* mapping table for queries */ + unsigned char *output[256]; /* return mapping - for display of registers */ + int base_uppercase; /* Start of upper-case ordinals */ +} chrmaptab, *CHRMAPTAB; + +chrmaptab *chr_read_maptab(char *name); +int chr_map_chrs(chr_t_entry *t, char **from, int len, int *read, char **to, + int max); +char **chr_map_input(chr_t_entry *t, char **from, int len); + +#endif