aboutsummaryrefslogtreecommitdiff
path: root/src/ellinika/elmorph.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ellinika/elmorph.h')
-rw-r--r--src/ellinika/elmorph.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/ellinika/elmorph.h b/src/ellinika/elmorph.h
new file mode 100644
index 0000000..d91f513
--- /dev/null
+++ b/src/ellinika/elmorph.h
@@ -0,0 +1,46 @@
+#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.