forked from GitHub/gf-core
remove some redundant code from NounJpn
This commit is contained in:
@@ -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
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
Reference in New Issue
Block a user