diff --git a/src/finnish/MakeStructuralFin.gf b/src/finnish/MakeStructuralFin.gf index d42d9ead0..8261c51e6 100644 --- a/src/finnish/MakeStructuralFin.gf +++ b/src/finnish/MakeStructuralFin.gf @@ -10,7 +10,12 @@ oper mkIQuant : Str -> IQuant = \s -> {s = \\n,c => s ; lock_IQuant = <>} ; ---- + mkIDet : Bool -> Str -> N -> Number -> IDet = \isNum,pref,s,n -> + lin IDet {s = \\c => pref ++ s.s ! NCase n c ; n = n ; isNum = isNum} ; + mkDet : N -> Number -> Det = \s,n -> - MorphoFin.mkDet n s ; - + lin Det (MorphoFin.mkDet n s) ; + partDet : N -> Number -> Det = \s,n -> + lin Det (MorphoFin.partDet False n s) ; + } diff --git a/src/finnish/MorphoFin.gf b/src/finnish/MorphoFin.gf index b92f32f32..a85b40a04 100644 --- a/src/finnish/MorphoFin.gf +++ b/src/finnish/MorphoFin.gf @@ -933,6 +933,10 @@ caseTable : Number -> CommonNoun -> Case => Str = \n,cn -> isNeg = pol } ; + partDet : Bool -> Number -> CommonNoun -> (PDet ** {sp : Case => Str}) = \isNeg,num,cn -> + mkDetPol isNeg num cn ** {isNum = True} ; + + -- Here we define personal and relative pronouns. -- Personal pronouns have possessive suffix (hänen talonsa) but "se" doesn't (sen talo)