İçeriğe atla

Modül:köken dilleri

Vikisözlük sitesinden
Modül belgelemesi [Düzenle] [Tazele]


local cikart = {}

local KokenDili = {}


function KokenDili:getirKod()
	return self._kod
end


function KokenDili:getirAsilAd()
	return self._rawData.asilAd
end


function KokenDili:getirDigerAdlari()
	return self._rawData.digerAdlari or {}
end


--function KokenDili:getirTumAdlar()
--	return self._rawData.adlar
--end


function KokenDili:getirKategoriAdi()
	return self:getirAsilAd()
end


function KokenDili:getirTip()
	return "köken dili"
end


function KokenDili:getirEbeveynKodu()
	return self._rawData.ebeveyn
end


function KokenDili:getirAile()
	return cikart.getirKodaGore(self._rawData.ebeveyn) or require("Modül:diller").getirKodaGore(self._rawData.ebeveyn)
end


function KokenDili:getirSoylar()
	if not self._soyNesneleri then
		self._soyNesneleri = {}
		
		for _, soy in ipairs(self._rawData.soylar or {}) do
			table.insert(self._soyNesneleri, cikart.getirKodaGore(soy) or require("Modül:diller").getirKodaGore(soy))
		end
	end
	
	return self._soyNesneleri
end


function KokenDili:getirVikipediMaddesi()
	return self._rawData.vikipedi_maddesi or self._rawData.asilAd
end


function KokenDili:yapVikipediBaglantisi()
	return "[[w:" .. self:getirVikipediMaddesi() .. "|" .. self:getirAsilAd() .. "]]"
end


function KokenDili:toJSON()
	local ret = {
		asilAd = self:getirAsilAd(),
		kategoriAdi = self:getirKategoriAdi(),
		kod = self._kod,
		digerAdlari = self:getirDigerAdlari(),
		ebeveyn = self._rawData.ebeveyn,
		tip = self:getirTip(),
		}
	
	return require("Modül:JSON").toJSON(ret)
end


function KokenDili:getRawData()
	return self._rawData
end


KokenDili.__index = KokenDili


function cikart.yapNesne(kod, veri)
	return veri and setmetatable({ _rawData = veri, _kod = kod }, KokenDili) or nil
end


function cikart.getirKodaGore(kod)
	return cikart.yapNesne(kod, mw.loadData("Modül:köken dilleri/veri")[kod])
end


function cikart.getirAsilAdaGore(ad)
	local kod = mw.loadData("Modül:köken dilleri/ada göre")[ad]
	
	if not kod then
		return nil
	end
	
	return cikart.yapNesne(kod, mw.loadData("Modül:köken dilleri/veri")[kod])
end


function cikart.ornek(ad)
	return cikart.getirKodaGore("sem-jar"):getirAsilAd()
end


return cikart
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy