diff options
Diffstat (limited to 'plugins/SpellChecker/hunspell/htypes.hxx')
-rw-r--r-- | plugins/SpellChecker/hunspell/htypes.hxx | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/plugins/SpellChecker/hunspell/htypes.hxx b/plugins/SpellChecker/hunspell/htypes.hxx new file mode 100644 index 0000000000..5b6c90966b --- /dev/null +++ b/plugins/SpellChecker/hunspell/htypes.hxx @@ -0,0 +1,32 @@ +#ifndef _HTYPES_HXX_ +#define _HTYPES_HXX_ + +#define ROTATE_LEN 5 + +#define ROTATE(v,q) \ + (v) = ((v) << (q)) | (((v) >> (32 - q)) & ((1 << (q))-1)); + +// hentry options +#define H_OPT (1 << 0) +#define H_OPT_ALIASM (1 << 1) +#define H_OPT_PHON (1 << 2) + +// see also csutil.hxx +#define HENTRY_WORD(h) &(h->word[0]) + +// approx. number of user defined words +#define USERWORD 1000 + +struct hentry +{ + unsigned char blen; // word length in bytes + unsigned char clen; // word length in characters (different for UTF-8 enc.) + short alen; // length of affix flag vector + unsigned short * astr; // affix flag vector + struct hentry * next; // next word with same hash code + struct hentry * next_homonym; // next homonym word (with same hash code) + char var; // variable fields (only for special pronounciation yet) + char word[1]; // variable-length word (8-bit or UTF-8 encoding) +}; + +#endif |