コード例 #1
0
ファイル: monster.py プロジェクト: billbrasky1/glottolog
def macro_area_from_lgcode(m, tree):
    lgd = languoids.macro_area_from_hid(tree=tree)

    def inject_macro_area((typ, fields)):
        mas = set(lgd[x] for x in lgcode((typ, fields)) if x in lgd and lgd[x])
        if mas:
            fields['macro_area'] = ', '.join(sorted(mas))
        return typ, fields
    
    return {k: inject_macro_area(tf) for k, tf in m.items()}
コード例 #2
0
ファイル: monster.py プロジェクト: clld/glottolog
def macro_area_from_lgcode(m, tree):
    lgd = languoids.macro_area_from_hid(tree=tree)

    def inject_macro_area(arg):
        typ, fields = arg
        mas = set(lgd[x] for x in lgcode((typ, fields)) if x in lgd and lgd[x])
        if mas:
            fields['macro_area'] = ', '.join(sorted(mas))
        return typ, fields
    
    return {k: inject_macro_area(tf) for k, tf in m.items()}
コード例 #3
0
    def test_macro_area_from_hid(self):
        from pyglottolog.languoids import macro_area_from_hid

        res = macro_area_from_hid(tree=self.tree)
        self.assertEqual(res['abc'], 'a')