class_docstr: Provides 2 main methods that syllabify words given phonology of its language.
docstr: Sets an alternative sonority hierarchy, note that you will also need
  to specify the vowelset with the set_vowels, in order for the module
  to correctly identify each nucleus.
  
  The order of the phonemes defined is by decreased consonantality
  
  >>> s = Syllabifier()
  >>> s.set_hierarchy([['i', 'u'], ['e'], ['a'], ['r'], ['m', 'n'], ['f']])
  >>> s.set_vowels(['i', 'u', 'e', 'a'])
  >>> s.syllabify('feminarum')
  ['fe', 'mi', 'na', 'rum']
docstr_tok: ["Sets","an","alternative","sonority","hierarchy",",","note","that","you","will","also","need","to","specify","the","vowelset","with","the","set_vowels",",","in","order","for","the","module","to","correctly","identify","each","nucleus",".","The","order","of","the","phonemes","defined","is","by","decreased","consonantality",">",">",">","s","=","Syllabifier","(",")",">",">",">","s.set_hierarchy","(","[","[","'","i","'",",","'","u","'","]",",","[","'","e","'","]",",","[","'","a","'","]",",","[","'","r","'","]",",","[","'m","'",",","'n","'","]",",","[","'","f","'","]","]",")",">",">",">","s.set_vowels","(","[","'","i","'",",","'","u","'",",","'","e","'",",","'","a","'","]",")",">",">",">","s.syllabify","(","'feminarum","'",")","[","'fe","'",",","'mi","'",",","'na","'",",","'rum","'","]"]
code: def set_hierarchy(self, hierarchy):
      """
      Sets an alternative sonority hierarchy, note that you will also need
      to specify the vowelset with the set_vowels, in order for the module
      to correctly identify each nucleus.
  
      The order of the phonemes defined is by decreased consonantality
  
      >>> s = Syllabifier()
      >>> s.set_hierarchy([['i', 'u'], ['e'], ['a'], ['r'], ['m', 'n'], ['f']])
      >>> s.set_vowels(['i', 'u', 'e', 'a'])
      >>> s.syllabify('feminarum')
      ['fe', 'mi', 'na', 'rum']
      """
      self.hierarchy = dict(
          [(k, i) for i, j in enumerate(hierarchy) for k in j]
      )
  
imports: import logging
  import unicodedata
  from collections import defaultdict
  from typing import List, Union
  import cltk.phonology.ang.syllabifier
  import cltk.phonology.enm.syllabifier
  import cltk.phonology.gmh.syllabifier
  import cltk.phonology.non.syllabifier
  import cltk.phonology.non.utils
  from cltk.core.exceptions import CLTKException
label_desc: Use image node_id 4 for calling the Syllabifier obj's underlying member method code with example usage: obj.set_hierarchy(hierarchy) without return types