forked from GitHub/gf-rgl
allow adjectivial forms for N2 and N3 as well
This commit is contained in:
@@ -85,8 +85,8 @@ concrete CatBul of Cat = CommonX - [IAdv,CAdv,AdV,SC] ** open ResBul, Prelude, P
|
||||
A2 = {s : AForm => Str; adv : Str; c2 : Str} ;
|
||||
|
||||
N = {s : NForm => Str; rel : AForm => Str; relPost : Bool; g : AGender} ;
|
||||
N2 = {s : NForm => Str; g : AGender} ** {c2 : Preposition} ;
|
||||
N3 = {s : NForm => Str; g : AGender} ** {c2,c3 : Preposition} ;
|
||||
N2 = {s : NForm => Str; rel : AForm => Str; relPost : Bool; g : AGender} ** {c2 : Preposition} ;
|
||||
N3 = {s : NForm => Str; rel : AForm => Str; relPost : Bool; g : AGender} ** {c2,c3 : Preposition} ;
|
||||
PN = {s : Str; g : Gender} ;
|
||||
|
||||
lindef
|
||||
@@ -107,8 +107,8 @@ concrete CatBul of Cat = CommonX - [IAdv,CAdv,AdV,SC] ** open ResBul, Prelude, P
|
||||
A2 = \s -> {s = \\_ => s; adv = s; c2 = ""};
|
||||
|
||||
N = \s -> {s = \\_ => s; rel = \\_ => s; relPost = False; g = AMasc NonHuman};
|
||||
N2 = \s -> {s = \\_ => s; g = AMasc NonHuman; c2 = {s=""; c=Acc}};
|
||||
N3 = \s -> {s = \\_ => s; g = AMasc NonHuman; c2,c3 = {s=""; c=Acc}};
|
||||
N2 = \s -> {s = \\_ => s; rel = \\_ => s; relPost = False; g = AMasc NonHuman; c2 = {s=""; c=Acc}};
|
||||
N3 = \s -> {s = \\_ => s; rel = \\_ => s; relPost = False; g = AMasc NonHuman; c2,c3 = {s=""; c=Acc}};
|
||||
|
||||
linref
|
||||
SSlash = \ss -> ss.s ! agrP3 (GSg Masc) ++ ss.c2.s;
|
||||
|
||||
@@ -151,6 +151,7 @@ lin
|
||||
s = reflPron ! aform (gennum cn.g (numnnum num.nn)) Def (RObj Acc) ++ num.s ! dgenderSpecies cn.g Indef role ++ cn.s ! nf
|
||||
in case role of {
|
||||
RObj Dat => "на" ++ s;
|
||||
RObj WithPrep => with_Word ++ s;
|
||||
_ => s
|
||||
} ;
|
||||
a = {gn = gennum cn.g (numnnum num.nn); p = P3} ;
|
||||
|
||||
@@ -170,7 +170,7 @@ oper
|
||||
--
|
||||
|
||||
prepN2 : N -> Prep -> N2 ;
|
||||
prepN2 n p = {s = n.s; g = n.g; c2 = p; lock_N2 = <>} ;
|
||||
prepN2 n p = n ** {c2 = p} ;
|
||||
|
||||
dirN2 : N -> N2 ;
|
||||
dirN2 n = prepN2 n noPrep ;
|
||||
@@ -180,7 +180,7 @@ oper
|
||||
--
|
||||
|
||||
prepN3 : N -> Prep -> Prep -> N3 ;
|
||||
prepN3 n p q = {s = n.s; g = n.g; c2 = p; c3 = q; lock_N3 = <>} ;
|
||||
prepN3 n p q = n ** {c2 = p; c3 = q} ;
|
||||
|
||||
dirN3 : N -> Prep -> N3 ;
|
||||
dirN3 n p = prepN3 n noPrep p ;
|
||||
|
||||
@@ -166,10 +166,10 @@ concrete NounBul of Noun = CatBul ** open ResBul, Prelude in {
|
||||
UseN2 noun = noun ;
|
||||
|
||||
ComplN2 f x = {s = \\nf => f.s ! nf ++ f.c2.s ++ x.s ! RObj f.c2.c; g=f.g} ;
|
||||
ComplN3 f x = {s = \\nf => f.s ! nf ++ f.c2.s ++ x.s ! RObj f.c2.c; c2 = f.c3; g=f.g} ;
|
||||
ComplN3 f x = {s = \\nf => f.s ! nf ++ f.c2.s ++ x.s ! RObj f.c2.c; rel = \\af => f.rel ! af ++ f.c2.s ++ x.s ! RObj f.c2.c; relPost = True; c2 = f.c3; g=f.g} ;
|
||||
|
||||
Use2N3 f = {s = f.s ; g=f.g ; c2 = f.c2} ;
|
||||
Use3N3 f = {s = f.s ; g=f.g ; c2 = f.c3} ;
|
||||
Use2N3 f = {s = f.s ; rel = f.rel ; relPost = f.relPost ; g=f.g ; c2 = f.c2} ;
|
||||
Use3N3 f = {s = f.s ; rel = f.rel ; relPost = f.relPost ; g=f.g ; c2 = f.c3} ;
|
||||
|
||||
|
||||
AdjCN ap cn = {
|
||||
|
||||
Reference in New Issue
Block a user