00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #include "ffpriv_exterior_local_cases.h"
00031 #include "ffpriv_genitive_stem.h"
00032 #include "ffpriv_plural_stem.h"
00033 #include "ffutil.h"
00034
00035 ffint32 ffpriv_adessive_singular(ffword* word)
00036 {
00037 ffint32 err;
00038
00039 if ( (err = ffpriv_genitive_stem(word)) ) {
00040 return err;
00041 } else {
00042 return ffstring_append(&word->data, ffpriv_vowel_harmony(&word->data, "lla", "llä"));
00043 }
00044 }
00045
00046 ffint32 ffpriv_adessive_plural(ffword* word)
00047 {
00048 word->metadata.cg = 0;
00049 ffpriv_plural_stem(word);
00050 ffstring_append(&word->data, ffpriv_vowel_harmony(&word->data, "lla", "llä"));
00051 return 0;
00052 }
00053
00054
00055 ffint32 ffpriv_ablative_singular(ffword* word)
00056 {
00057 ffint32 err;
00058
00059 if ( (err = ffpriv_genitive_stem(word)) ) {
00060 return err;
00061 } else {
00062 return ffstring_append(&word->data, ffpriv_vowel_harmony(&word->data, "lta", "ltä"));
00063 }
00064 }
00065
00066 ffint32 ffpriv_ablative_plural(ffword* word)
00067 {
00068 word->metadata.cg = 0;
00069 ffpriv_plural_stem(word);
00070 ffstring_append(&word->data, ffpriv_vowel_harmony(&word->data, "lta", "ltä"));
00071 return 0;
00072 }
00073
00074 ffint32 ffpriv_allative_singular(ffword* word)
00075 {
00076 ffint32 err;
00077
00078 if ( (err = ffpriv_genitive_stem(word)) ) {
00079 return err;
00080 } else {
00081 return ffstring_append(&word->data,"lle");
00082 }
00083 }
00084
00085 ffint32 ffpriv_allative_plural(ffword* word)
00086 {
00087 word->metadata.cg = 0;
00088 ffpriv_plural_stem(word);
00089 ffstring_append(&word->data, "lle");
00090 return 0;
00091 }