local decl = {}
decl["m1"] = {
params = {
[1] = {},
},
singular = function(args, data)
data.forms["nom_sg"] = {args[1] .. "i"}
data.forms["nom_sg_def"] = {args[1] .. "in"}
data.forms["acc_sg"] = {args[1] .. "a"}
data.forms["acc_sg_def"] = {args[1] .. "an"}
data.forms["dat_sg"] = {args[1] .. "a"}
data.forms["dat_sg_def"] = {args[1] .. "anum"}
data.forms["gen_sg"] = {args[1] .. "a"}
data.forms["gen_sg_def"] = {args[1] .. "ans"}
end,
plural = function(args, data)
data.forms["nom_pl"] = {args[1] .. "ar"}
data.forms["nom_pl_def"] = {args[1] .. "arnir"}
data.forms["acc_pl"] = {args[1] .. "ar"}
data.forms["acc_pl_def"] = {args[1] .. "arnar"}
data.forms["dat_pl"] = {args[1] .. "um"}
data.forms["dat_pl_def"] = {args[1] .. "unum"}
data.forms["gen_pl"] = {args[1] .. "a"}
data.forms["gen_pl_def"] = {args[1] .. "anna"}
end
}
setmetatable(decl["m1"], {__call = function(self, args, data)
data.decl_type = "m1"
self.singular(args, data)
self.plural(args, data)
end
})
decl["m1-p"] = {
params = {
[1] = {},
},
}
setmetatable(decl["m1-p"], {__call = function(self, args, data)
decl["m1"].plural(args, data)
data.info = "(僅複數)"
data.decl_type = "m1p"
data.defective = "p"
end
})
decl["m1-s"] = {
params = {
[1] = {},
},
}
setmetatable(decl["m1-s"], {__call = function(self, args, data)
decl["m1"].singular(args, data)
data.info = "(僅單數)"
data.decl_type = "m1s"
data.defective = "s"
end
})
decl["m1-s-def"] = {
params = {
[1] = {},
},
}
setmetatable(decl["m1-s-def"], {__call = function(self, args, data)
decl["m1"].singular(args, data)
data.info = "(僅單數)"
data.decl_type = "m1s def"
data.defective = "s_def"
end
})
decl["m2"] = {
params = {
[1] = {},
},
singular = function(args, data)
data.forms["nom_sg"] = {args[1] .. "i"}
data.forms["nom_sg_def"] = {args[1] .. "in"}
data.forms["acc_sg"] = {args[1] .. "ja"}
data.forms["acc_sg_def"] = {args[1] .. "jan"}
data.forms["dat_sg"] = {args[1] .. "ja"}
data.forms["dat_sg_def"] = {args[1] .. "janum"}
data.forms["gen_sg"] = {args[1] .. "ja"}
data.forms["gen_sg_def"] = {args[1] .. "jans"}
end,
plural = function(args, data)
data.forms["nom_pl"] = {args[1] .. "jar"}
data.forms["nom_pl_def"] = {args[1] .. "jarnir"}
data.forms["acc_pl"] = {args[1] .. "jar"}
data.forms["acc_pl_def"] = {args[1] .. "jarnar"}
data.forms["dat_pl"] = {args[1] .. "jum"}
data.forms["dat_pl_def"] = {args[1] .. "junum"}
data.forms["gen_pl"] = {args[1] .. "ja"}
data.forms["gen_pl_def"] = {args[1] .. "janna"}
end
}
setmetatable(decl["m2"], {__call = function(self, args, data)
data.decl_type = "m2"
self.singular(args, data)
self.plural(args, data)
end
})
decl["m3"] = {
params = {
[1] = {},
[2] = {},
},
}
setmetatable(decl["m3"], {__call = function(self, args, data)
data.decl_type = "m3"
data.forms["nom_sg"] = {args[1] .. "a" .. args[2] .. "i"}
data.forms["nom_sg_def"] = {args[1] .. "a" .. args[2] .. "in"}
data.forms["nom_pl"] = {args[1] .. "a" .. args[2] .. "ar"}
data.forms["nom_pl_def"] = {args[1] .. "a" .. args[2] .. "arnir"}
data.forms["acc_sg"] = {args[1] .. "a" .. args[2] .. "a"}
data.forms["acc_sg_def"] = {args[1] .. "a" .. args[2] .. "an"}
data.forms["acc_pl"] = {args[1] .. "a" .. args[2] .. "ar"}
data.forms["acc_pl_def"] = {args[1] .. "a" .. args[2] .. "arnar"}
data.forms["dat_sg"] = {args[1] .. "a" .. args[2] .. "a"}
data.forms["dat_sg_def"] = {args[1] .. "a" .. args[2] .. "anum"}
data.forms["dat_pl"] = {args[1] .. "ø" .. args[2] .. "um"}
data.forms["dat_pl_def"] = {args[1] .. "ø" .. args[2] .. "unum"}
data.forms["gen_sg"] = {args[1] .. "a" .. args[2] .. "a"}
data.forms["gen_sg_def"] = {args[1] .. "a" .. args[2] .. "ans"}
data.forms["gen_pl"] = {args[1] .. "a" .. args[2] .. "a"}
data.forms["gen_pl_def"] = {args[1] .. "a" .. args[2] .. "anna"}
end
})
decl["m4"] = {
params = {
[1] = {},
[2] = {},
},
}
setmetatable(decl["m4"], {__call = function(self, args, data)
data.decl_type = "m4"
data.forms["nom_sg"] = {args[1] .. "a" .. args[2] .. "i"}
data.forms["nom_sg_def"] = {args[1] .. "a" .. args[2] .. "in"}
data.forms["nom_pl"] = {args[1] .. "a" .. args[2] .. "ar"}
data.forms["nom_pl_def"] = {args[1] .. "a" .. args[2] .. "arnir"}
data.forms["acc_sg"] = {args[1] .. "a" .. args[2] .. "a"}
data.forms["acc_sg_def"] = {args[1] .. "a" .. args[2] .. "an"}
data.forms["acc_pl"] = {args[1] .. "a" .. args[2] .. "ar"}
data.forms["acc_pl_def"] = {args[1] .. "a" .. args[2] .. "arnar"}
data.forms["dat_sg"] = {args[1] .. "a" .. args[2] .. "a"}
data.forms["dat_sg_def"] = {args[1] .. "a" .. args[2] .. "anum"}
data.forms["dat_pl"] = {args[1] .. "o" .. args[2] .. "um"}
data.forms["dat_pl_def"] = {args[1] .. "o" .. args[2] .. "unum"}
data.forms["gen_sg"] = {args[1] .. "a" .. args[2] .. "a"}
data.forms["gen_sg_def"] = {args[1] .. "a" .. args[2] .. "ans"}
data.forms["gen_pl"] = {args[1] .. "a" .. args[2] .. "a"}
data.forms["gen_pl_def"] = {args[1] .. "a" .. args[2] .. "anna"}
end
})
decl["m5"] = {
params = {
[1] = {},
[2] = {},
},
}
setmetatable(decl["m5"], {__call = function(self, args, data)
data.decl_type = "m5"
data.forms["nom_sg"] = {args[1] .. "ó" .. args[2] .. "i"}
data.forms["nom_sg_def"] = {args[1] .. "ó" .. args[2] .. "in"}
data.forms["nom_pl"] = {args[1] .. "ø" .. args[2] .. "ur"}
data.forms["nom_pl_def"] = {args[1] .. "ø" .. args[2] .. "urnir"}
data.forms["acc_sg"] = {args[1] .. "ó" .. args[2] .. "a"}
data.forms["acc_sg_def"] = {args[1] .. "ó" .. args[2] .. "an"}
data.forms["acc_pl"] = {args[1] .. "ø" .. args[2] .. "ur"}
data.forms["acc_pl_def"] = {args[1] .. "ø" .. args[2] .. "urnar"}
data.forms["dat_sg"] = {args[1] .. "ó" .. args[2] .. "a"}
data.forms["dat_sg_def"] = {args[1] .. "ó" .. args[2] .. "anum"}
data.forms["dat_pl"] = {args[1] .. "ó" .. args[2] .. "um"}
data.forms["dat_pl_def"] = {args[1] .. "ó" .. args[2] .. "unum"}
data.forms["gen_sg"] = {args[1] .. "ó" .. args[2] .. "a"}
data.forms["gen_sg_def"] = {args[1] .. "ó" .. args[2] .. "ans"}
data.forms["gen_pl"] = {args[1] .. "ó" .. args[2] .. "a"}
data.forms["gen_pl_def"] = {args[1] .. "ó" .. args[2] .. "anna"}
end
})
decl["m6"] = {
params = {
[1] = {},
},
singular = function(args, data)
data.forms["nom_sg"] = {args[1] .. "ur"}
data.forms["nom_sg_def"] = {args[1] .. "urin"}
data.forms["acc_sg"] = {args[1]}
data.forms["acc_sg_def"] = {args[1] .. "in"}
data.forms["dat_sg"] = {args[1] .. "i"}
data.forms["dat_sg_def"] = {args[1] .. "inum"}
data.forms["gen_sg"] = {args[1] .. "s"}
data.forms["gen_sg_def"] = {args[1] .. "sins"}
end,
plural = function(args, data)
data.forms["nom_pl"] = {args[1] .. "ar"}
data.forms["nom_pl_def"] = {args[1] .. "arnir"}
data.forms["acc_pl"] = {args[1] .. "ar"}
data.forms["acc_pl_def"] = {args[1] .. "arnar"}
data.forms["dat_pl"] = {args[1] .. "um"}
data.forms["dat_pl_def"] = {args[1] .. "unum"}
data.forms["gen_pl"] = {args[1] .. "a"}
data.forms["gen_pl_def"] = {args[1] .. "anna"}
end
}
setmetatable(decl["m6"], {__call = function(self, args, data)
data.decl_type = "m6"
self.singular(args, data)
self.plural(args, data)
end
})
decl["m6-s"] = {
params = {
[1] = {},
},
}
setmetatable(decl["m6-s"], {__call = function(self, args, data)
decl["m6"].singular(args, data)
data.info = "(僅單數)"
data.decl_type = "m6s"
data.defective = "s"
end
})
return decl