'Return all lemma names for all synsets for the given
part of speech tag and language or languages. If pos is
not specified, all synsets for all parts of speech will
be used.'

def all_lemma_names(self, pos=None, lang=u'eng'):

    if (lang == u'eng'):
        if (pos is None):
            return iter(self._lemma_pos_offset_map)
        else:
            return (lemma for lemma in self._lemma_pos_offset_map if (pos in self._lemma_pos_offset_map[lemma]))
    else:
        self._load_lang_data(lang)
        lemma = []
        for i in self._lang_data[lang][0]:
            if ((pos is not None) and (i[(-1)] != pos)):
                continue
            lemma.extend(self._lang_data[lang][0][i])
        lemma = list(set(lemma))
        return lemma
