summaryrefslogtreecommitdiffabout
path: root/src/ellinika/elmorph.h
blob: eacbde5d7be15e2665ed4abe47da02eca12c18ec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/* This file is part of Ellinika project.
   Copyright (C) 2011 Sergey Poznyakoff

   Ellinika is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3 of the License, or
   (at your option) any later version.

   Ellinika 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 General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
#define CHF_OXEIA       1
#define CHF_PERISPWMENH 2
#define CHF_BAREIA      3

#define CHF_ACCENT_MASK 0x000f

#define CHF_TREMA       0x0010

#define CHF_VOWEL         0x00020
#define CHF_CONSONANT     0x00040
#define CHF_SEMIVOWEL     0x00080
#define CHF_PUNCT         0x00100
#define CHF_SYMBOL        0x00200
#define CHF_MODIFIER      0x00400
#define CHF_ARCHAIC       0x00800
#define CHF_LOWER         0x01000
#define CHF_UPPER         0x02000
#define CHF_NUMERIC       0x04000

#define CHF_DIPH1         0x10000
#define CHF_DIPH2         0x20000

int elchr_flags(unsigned ch);
int elchr_isupper(unsigned ch);
int elchr_islower(unsigned ch);
int elchr_getaccent(unsigned ch);
int elchr_istrema(unsigned ch);
int elchr_isvowel(unsigned ch);
int elchr_isconsonant(unsigned ch);
int elchr_issemivowel(unsigned ch);
int elchr_ispunct(unsigned ch);
int elchr_issymbol(unsigned ch);
int elchr_ismodifier(unsigned ch);
int elchr_isarchaic(unsigned ch);
int elchr_isnumeric(unsigned ch);
unsigned elchr_numeric_value(unsigned ch);
unsigned elchr_toupper(unsigned ch);
unsigned elchr_tolower(unsigned ch);
unsigned elchr_base(unsigned ch);
unsigned elchr_deaccent(unsigned ch);
unsigned elchr_accent(unsigned ch, int acc);
int elchr_diphthong(unsigned ch, int state);


int elmorph_thema_aoristoy(unsigned *word, size_t len,
			   unsigned **thema, size_t *tlen);

Return to:

Send suggestions and report system problems to the System administrator.