Refactor: CString optimizations
[TortoiseGit.git] / ext / hunspell / phonet.hxx
blobf91d3b02b893c85463f8bb94c7da5d91d2e839a0
1 /* phonetic.c - generic replacement aglogithms for phonetic transformation
2 Copyright (C) 2000 Bjoern Jacke
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License version 2.1 as published by the Free Software Foundation;
8 This library is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 Lesser General Public License for more details.
13 You should have received a copy of the GNU Lesser General Public
14 License along with this library; If not, see
15 <http://www.gnu.org/licenses/>.
17 Changelog:
19 2000-01-05 Bjoern Jacke <bjoern at j3e.de>
20 Initial Release insprired by the article about phonetic
21 transformations out of c't 25/1999
23 2007-07-26 Bjoern Jacke <bjoern at j3e.de>
24 Released under MPL/GPL/LGPL tri-license for Hunspell
26 2007-08-23 Laszlo Nemeth <nemeth at OOo>
27 Porting from Aspell to Hunspell using C-like structs
30 #ifndef __PHONETHXX__
31 #define __PHONETHXX__
33 #define HASHSIZE 256
34 #define MAXPHONETLEN 256
35 #define MAXPHONETUTF8LEN (MAXPHONETLEN * 4)
37 #include "hunvisapi.h"
39 struct phonetable {
40 char utf8;
41 cs_info * lang;
42 int num;
43 char * * rules;
44 int hash[HASHSIZE];
47 LIBHUNSPELL_DLL_EXPORTED void init_phonet_hash(phonetable & parms);
49 LIBHUNSPELL_DLL_EXPORTED int phonet (const char * inword, char * target,
50 int len, phonetable & phone);
52 #endif