1
0
forked from GitHub/gf-core

remove some redundant code from NounJpn

This commit is contained in:
Inari Listenmaa
2017-07-04 16:23:28 +02:00
parent fb95d5103c
commit f3c12fc506

View File

@@ -64,16 +64,11 @@ flags coding = utf8 ;
anim = np.anim anim = np.anim
} ; } ;
PPartNP np v2 = { PPartNP np v2 = np ** {
s = \\st => v2.pass ! Plain ! TPast ! Pos ++ np.s ! st ; s = \\st => v2.pass ! Plain ! TPast ! Pos ++ np.s ! st ;
prepositive = np.prepositive ;
needPart = np.needPart ;
changePolar = np.changePolar ;
meaning = np.meaning ;
anim = np.anim
} ; } ;
AdvNP np adv = { AdvNP np adv = np ** {
s = \\st => case adv.prepositive of { s = \\st => case adv.prepositive of {
True => np.s ! st ; True => np.s ! st ;
False => adv.s ! st ++ np.s ! st False => adv.s ! st ++ np.s ! st
@@ -81,22 +76,13 @@ flags coding = utf8 ;
prepositive = \\st => case adv.prepositive of { prepositive = \\st => case adv.prepositive of {
True => adv.s ! st ; True => adv.s ! st ;
False => [] False => []
} ; }
needPart = np.needPart ;
changePolar = np.changePolar ;
meaning = np.meaning ;
anim = np.anim
} ; } ;
ExtAdvNP = AdvNP ; ExtAdvNP = AdvNP ;
RelNP np rs = { RelNP np rs = np ** {
s = \\st => rs.s ! np.anim ! st ++ np.s ! st ; s = \\st => rs.s ! np.anim ! st ++ np.s ! st
prepositive = np.prepositive ;
needPart = np.needPart ;
changePolar = np.changePolar ;
meaning = np.meaning ;
anim = np.anim
} ; } ;
DetNP det = { DetNP det = {
@@ -170,23 +156,7 @@ flags coding = utf8 ;
} }
} ; } ;
OrdDigits d = { OrdDigits, OrdNumeral = mkOrd ; -- "banme"
pred = \\st,t,p => d.s ++ "番目" ++ mkCopula.s ! st ! t ! p ; -- "banme"
attr = d.s ++ "番目の" ;
te = \\p => d.s ++ "番目" ++ mkCopula.te ! p ;
ba = \\p => d.s ++ "番目" ++ mkCopula.ba ! p ;
adv = \\p => d.s ++ "番目" ;
dropNaEnging = d.s ++ "番目の"
} ;
OrdNumeral num = {
pred = \\st,t,p => num.s ++ "番目" ++ mkCopula.s ! st ! t ! p ;
attr = num.s ++ "番目の" ;
te = \\p => num.s ++ "番目" ++ mkCopula.te ! p ;
ba = \\p => num.s ++ "番目" ++ mkCopula.ba ! p ;
adv = \\p => num.s ++ "番目" ;
dropNaEnging = num.s ++ "番目の"
} ;
OrdSuperl a = { OrdSuperl a = {
pred = \\st,t,p => "一番" ++ a.pred ! st ! t ! p ; -- "ichiban" pred = \\st,t,p => "一番" ++ a.pred ! st ! t ! p ; -- "ichiban"
@@ -224,97 +194,52 @@ flags coding = utf8 ;
no = False no = False
} ; } ;
UseN n = { UseN n = n ** {
s = n.s ;
object = \\st => [] ; object = \\st => [] ;
prepositive = \\st => [] ; prepositive = \\st => [] ;
hasAttr = False ; hasAttr = False ;
anim = n.anim ;
counter = n.counter ;
counterReplace = n.counterReplace ;
counterTsu = n.counterTsu
} ; } ;
ComplN2 n2 np = { ComplN2 n2 np = n2 ** {
s = n2.s ;
object = \\st => n2.object ! st ++ np.s ! st ++ n2.prep ; object = \\st => n2.object ! st ++ np.s ! st ++ n2.prep ;
prepositive = np.prepositive ; prepositive = np.prepositive ;
hasAttr = False ; hasAttr = False ;
anim = n2.anim ;
counter = n2.counter ;
counterReplace = n2.counterReplace ;
counterTsu = n2.counterTsu
} ; } ;
ComplN3 n3 np = { ComplN3 n3 np = n3 ** {
s = n3.s ;
object = \\st => np.s ! st ++ n3.prep1 ; object = \\st => np.s ! st ++ n3.prep1 ;
prepositive = np.prepositive ; prepositive = np.prepositive ;
prep = n3.prep2 ; prep = n3.prep2 ;
anim = n3.anim ;
counter = n3.counter ;
counterReplace = n3.counterReplace ;
counterTsu = n3.counterTsu
} ; } ;
UseN2 n2 = { UseN2 n2 = n2 ** {
s = n2.s ;
object = n2.object ;
prepositive = \\st => [] ; prepositive = \\st => [] ;
hasAttr = False ; hasAttr = False ;
anim = n2.anim ;
counter = n2.counter ;
counterReplace = n2.counterReplace ;
counterTsu = n2.counterTsu
} ; } ;
Use2N3 n3 = { Use2N3 n3 = n3 ** {
s = n3.s ;
object = \\st => [] ; object = \\st => [] ;
prep = n3.prep1 ; prep = n3.prep1 ;
anim = n3.anim ;
counter = n3.counter ;
counterReplace = n3.counterReplace;
counterTsu = n3.counterTsu
} ; } ;
Use3N3 n3 = { Use3N3 n3 = n3 ** {
s = n3.s ;
object = \\st => [] ; object = \\st => [] ;
prep = n3.prep2 ; prep = n3.prep2 ;
anim = n3.anim ;
counter = n3.counter ;
counterReplace = n3.counterReplace;
counterTsu = n3.counterTsu
} ; } ;
AdjCN ap cn = { AdjCN ap cn = cn ** {
s = \\n,st => case cn.hasAttr of { s = \\n,st => case cn.hasAttr of {
False => ap.attr ! st ++ cn.s ! n ! st ; False => ap.attr ! st ++ cn.s ! n ! st ;
True => ap.te ! st ! Pos ++ cn.s ! n ! st True => ap.te ! st ! Pos ++ cn.s ! n ! st
} ; } ;
object = cn.object ;
prepositive = cn.prepositive ;
hasAttr = True ; hasAttr = True ;
anim = cn.anim ;
counter = cn.counter ;
counterReplace = cn.counterReplace ;
counterTsu = cn.counterTsu
} ; } ;
RelCN cn rs = { RelCN cn rs = cn ** {
s = cn.s ;
anim = cn.anim ;
counter = cn.counter ;
counterReplace = cn.counterReplace ;
object = \\st => rs.s ! cn.anim ! st ++ cn.object ! st ; object = \\st => rs.s ! cn.anim ! st ++ cn.object ! st ;
prepositive = cn.prepositive ;
hasAttr = cn.hasAttr ;
counterTsu = cn.counterTsu
} ; } ;
AdvCN cn adv = { AdvCN cn adv = cn ** {
s = cn.s ;
object = \\st => case adv.prepositive of { object = \\st => case adv.prepositive of {
True => cn.object ! st ; True => cn.object ! st ;
False => adv.s ! st ++ cn.object ! st False => adv.s ! st ++ cn.object ! st
@@ -323,44 +248,18 @@ flags coding = utf8 ;
True => adv.s ! st ; True => adv.s ! st ;
False => [] False => []
} ; } ;
hasAttr = cn.hasAttr ;
anim = cn.anim ;
counter = cn.counter ;
counterReplace = cn.counterReplace ;
counterTsu = cn.counterTsu
} ; } ;
SentCN cn sc = { SentCN cn sc = cn ** {
s = cn.s ;
object = \\st => sc.s ! Ga ! st ++ cn.object ! st ; object = \\st => sc.s ! Ga ! st ++ cn.object ! st ;
prepositive = cn.prepositive ;
hasAttr = cn.hasAttr ;
anim = cn.anim ;
counter = cn.counter ;
counterReplace = cn.counterReplace;
counterTsu = cn.counterTsu
} ; } ;
ApposCN cn np = { ApposCN cn np = cn ** {
s = \\n,st => np.s ! st ++ cn.s ! n ! st ; s = \\n,st => np.s ! st ++ cn.s ! n ! st ;
object = cn.object ;
prepositive = cn.prepositive ;
hasAttr = cn.hasAttr ;
anim = cn.anim ;
counter = cn.counter ;
counterReplace = cn.counterReplace ;
counterTsu = cn.counterTsu
} ; } ;
PossNP cn np = { -- house of Paris, house of mine PossNP cn np = cn ** { -- house of Paris, house of mine
s = \\n,st => np.s ! st ++ "の" ++ cn.s ! n ! st ; s = \\n,st => np.s ! st ++ "の" ++ cn.s ! n ! st ;
object = cn.object ;
prepositive = cn.prepositive ;
hasAttr = cn.hasAttr ;
anim = cn.anim ;
counter = cn.counter ;
counterReplace = cn.counterReplace ;
counterTsu = cn.counterTsu
} ; } ;
PartNP = PossNP ; PartNP = PossNP ;
@@ -369,10 +268,7 @@ flags coding = utf8 ;
s = \\st => np.s ! st ++ "の" ++ det.sp ! st ; s = \\st => np.s ! st ++ "の" ++ det.sp ! st ;
prepositive = np.prepositive ; prepositive = np.prepositive ;
needPart = True ; needPart = True ;
changePolar = case det.no of { changePolar = det.no ;
True => True ;
False => False
} ;
meaning = SomeoneElse ; meaning = SomeoneElse ;
anim = np.anim anim = np.anim
} ; } ;