1
0
forked from GitHub/gf-rgl

(Jpn) Replace bar = {x = foo.x ; …} with extension: bar = foo ** {…}

Checked with gftest that the operation didn't change anything.
This commit is contained in:
Inari Listenmaa
2020-05-20 16:08:04 +02:00
parent 9d5555d393
commit 3dc17b2f4b
3 changed files with 25 additions and 78 deletions

View File

@@ -23,8 +23,7 @@ flags coding = utf8 ;
} ;
prepositive = False} ;
AdAdv ada adv = {s = \\st => ada.s ++ adv.s ! st ;
prepositive = adv.prepositive} ;
AdAdv ada adv = adv ** {s = \\st => ada.s ++ adv.s ! st} ;
PositAdAAdj a = {s = a.adv ! Pos } ;

View File

@@ -52,16 +52,12 @@ flags coding = utf8 ;
anim = pron.anim
} ;
PredetNP p np = {
PredetNP p np = np ** {
s = \\st => p.s ++ np.s ! st ;
prepositive = np.prepositive ;
needPart = np.needPart ;
changePolar = case p.not of {
True => True ;
False => np.changePolar
} ;
meaning = np.meaning ;
anim = np.anim
} ;
PPartNP np v2 = np ** {
@@ -180,13 +176,11 @@ flags coding = utf8 ;
DefArt = {s = \\st => "" ; sp = \\st => "これ" ; no = False} ;
MassNP cn = {
MassNP cn = cn ** {
s = \\st => cn.object ! st ++ cn.s ! Pl ! st ;
prepositive = cn.prepositive ;
needPart = True ;
changePolar = False ;
meaning = SomeoneElse ;
anim = cn.anim
} ;
PossPron pron = {

View File

@@ -17,7 +17,7 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
} ;
ComplVV v vp = case v.sense of {
Abil => {
Abil => vp ** {
verb = \\sp,a,st,t,p => vp.verb ! sp ! a ! Plain ! TPres ! ResJpn.Pos ++
"ことが" ++ v.s ! sp ! st ! t ! p ;
te = \\sp,a,st,p => vp.verb ! sp ! a ! Plain ! TPres ! ResJpn.Pos ++ "ことが" ++
@@ -28,12 +28,9 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
"ことが" ++ v.i_stem ! sp ;
ba = \\sp,a,st,p => vp.verb ! sp ! a ! Plain ! TPres ! ResJpn.Pos ++ "ことが" ++
v.ba ! sp ! p ;
prep = vp.prep ;
obj = \\st => vp.obj ! st ;
prepositive = vp.prepositive ;
needSubject = True
} ;
Oblig => {
Oblig => vp ** {
verb = \\sp,a,st,t => table {
Pos => vp.a_stem ! sp ! a ! st ++ "なければ" ++ v.s ! sp ! st ! t ! Neg ;
Neg => vp.te ! sp ! a ! st ! Pos ++ "は" ++ v.s ! sp ! st ! t ! Neg
@@ -48,20 +45,14 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
Pos => vp.a_stem ! sp ! a ! st ++ "なければ" ++ v.ba ! sp ! Pos ;
Neg => vp.te ! sp ! a ! st ! Pos ++ "は" ++ v.ba ! sp ! Pos
} ;
prep = vp.prep ;
obj = \\st => vp.obj ! st ;
prepositive = vp.prepositive ;
needSubject = True
} ;
Wish => {
Wish => vp ** {
verb = \\sp,a,st,t,p => vp.i_stem ! sp ! a ! st ++ v.s ! sp ! st ! t ! p ;
te = \\sp,a,st,p => vp.i_stem ! sp ! a ! st ++ v.te ! sp ! p ;
a_stem = \\sp,a,st => vp.i_stem ! sp ! a ! st ++ v.a_stem ! sp ;
i_stem = \\sp,a,st => vp.i_stem ! sp ! a ! st ++ v.i_stem ! sp ;
ba = \\sp,a,st,p => vp.i_stem ! sp ! a ! st ++ v.ba ! sp ! p ;
prep = vp.prep ;
obj = \\st => vp.obj ! st ;
prepositive = vp.prepositive ;
needSubject = True
}
} ;
@@ -205,7 +196,7 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
} ;
SlashVV v vpslash = case v.sense of {
Abil => {
Abil => vpslash ** {
s = \\sp,st,t,p => vpslash.s ! sp ! Plain ! TPres ! ResJpn.Pos ++
"ことが" ++ v.s ! sp ! st ! t ! p ;
te = \\sp,p => vpslash.s ! sp ! Plain ! TPres ! ResJpn.Pos ++ "ことが" ++
@@ -216,12 +207,9 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
v.i_stem ! sp ;
ba = \\sp,p => vpslash.s ! sp ! Plain ! TPres ! ResJpn.Pos ++ "ことが" ++
v.ba ! sp ! p ;
prep = vpslash.prep ;
obj = vpslash.obj ;
prepositive = vpslash.prepositive ;
v2vType = False
} ;
Oblig => {
Oblig => vpslash ** {
s = \\sp,st,t => table {
Pos => vpslash.a_stem ! sp ++ "なければ" ++ v.s ! sp ! st ! t ! Neg ;
Neg => vpslash.te ! sp ! Pos ++ "は" ++ v.s ! sp ! st ! t ! Neg
@@ -236,20 +224,14 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
Pos => vpslash.a_stem ! sp ++ "なければ" ++ v.ba ! sp ! Pos ;
Neg => vpslash.te ! sp ! Pos ++ "は" ++ v.ba ! sp ! Pos
} ;
prep = vpslash.prep ;
obj = vpslash.obj ;
prepositive = vpslash.prepositive ;
v2vType = False
} ;
Wish => {
Wish => vpslash ** {
s = \\sp,st,t,p => vpslash.i_stem ! sp ++ v.s ! sp ! st ! t ! p ;
te = \\sp,p => vpslash.i_stem ! sp ++ v.te ! sp ! p ;
a_stem = \\sp => vpslash.i_stem ! sp ++ v.a_stem ! sp ;
i_stem = \\sp => vpslash.i_stem ! sp ++ v.i_stem ! sp ;
ba = \\sp,p => vpslash.i_stem ! sp ++ v.ba ! sp ! p ;
prep = vpslash.prep ;
obj = vpslash.obj ;
prepositive = vpslash.prepositive ;
v2vType = False
}
} ;
@@ -267,7 +249,7 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
v2vType = True
} ;
ReflVP vpslash = {
ReflVP vpslash = vpslash ** {
verb = \\sp,a,st,t,p => vpslash.s ! sp ! st ! t ! p ;
a_stem = \\sp,a,st => vpslash.a_stem ! sp ;
i_stem = \\sp,a,st => vpslash.i_stem ! sp ;
@@ -300,13 +282,7 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
needSubject = True
} ;
AdvVP vp adv = {
verb = vp.verb ;
te = vp.te ;
a_stem = vp.a_stem ;
i_stem = vp.i_stem ;
ba = vp.ba ;
prep = vp.prep ;
AdvVP vp adv = vp ** {
obj = \\st => case adv.prepositive of {
True => vp.obj ! st ;
False => adv.s ! st ++ vp.obj ! st
@@ -315,30 +291,15 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
True => vp.prepositive ! st ++ adv.s ! st ;
False => vp.prepositive ! st
} ;
needSubject = vp.needSubject
} ;
ExtAdvVP = AdvVP ;
AdVVP adv vp = {
verb = vp.verb ;
te = vp.te ;
a_stem = vp.a_stem ;
i_stem = vp.i_stem ;
ba = vp.ba ;
prep = vp.prep ;
AdVVP adv vp = vp ** {
obj = \\st => adv.s ++ vp.obj ! st ;
prepositive = vp.prepositive ;
needSubject = vp.needSubject
} ;
AdvVPSlash vpslash adv = {
s = vpslash.s ;
te = vpslash.te ;
a_stem = vpslash.a_stem ;
i_stem = vpslash.i_stem ;
ba = vpslash.ba ;
prep = vpslash.prep ;
AdvVPSlash vpslash adv = vpslash ** {
obj = \\st => case adv.prepositive of {
True => vpslash.obj ! st ;
False => adv.s ! st ++ vpslash.obj ! st
@@ -350,15 +311,8 @@ concrete VerbJpn of Verb = CatJpn ** open ResJpn, Prelude in {
v2vType = False
} ;
AdVVPSlash adv vpslash = {
s = vpslash.s ;
te = vpslash.te ;
a_stem = vpslash.a_stem ;
i_stem = vpslash.i_stem ;
ba = vpslash.ba ;
prep = vpslash.prep ;
AdVVPSlash adv vpslash = vpslash ** {
obj = \\st => adv.s ++ vpslash.obj ! st ;
prepositive = vpslash.prepositive ;
v2vType = False
} ;