Files
gf-core/lib/src/hebrew/NounHeb.gf
2012-05-27 21:37:58 +00:00

59 lines
1.1 KiB
Plaintext

concrete NounHeb of Noun = CatHeb ** open ResHeb, Prelude in {
flags optimize=all_subs ; coding=utf8 ;
lin
DetCN det cn = {
s = \\c => {obj = cn.s ! det.n ! det.sp ++ det.s ! cn.g } ;
isDef = det.isDef ;
sp = det.sp ;
a = Ag cn.g det.n Per3
} ;
AdjCN ap cn =
let
g = cn.g
in {
s = \\sp => table {n => cn.s ! sp ! n ++ ap.s ! sp ! n ! g} ;
g = g
} ;
UseN n = n ;
DefArt = {
s = \\_,_ => "" ;
n = Sg ;
sp = Def ;
isSNum, isDef = True
} ;
IndefArt = {
s = \\_,_ => "" ;
n = Sg ;
sp = Indef ;
isSNum, isDef = False
} ;
DetQuant quant num = {
s = \\g => quant.s ! num.n ! g ++ num.s ! Nom ; --- fix case
n = num.n;
sp = Def ;
isDef = True ;
isSNum = False
} ;
NumSg = {s = \\_ => []; n = Sg} ;
NumPl = {s = \\_ => []; n = Pl} ;
UsePN pn = {
s = \\c => {obj = pn.s ! Nom} ; --TODO define a function for case
a = Ag pn.g Sg Per3;
sp = Def ;
isDef = False
} ;
UsePron p = p ;
}