class_docstr: On behalf of g2pk.G2p.
  
  g2pk.G2p isn't pickalable and it can't be copied to the other processes
  via multiprocessing module.
  As a workaround, g2pk.G2p is instantiated upon calling this class.
class_docstr_tok: ["On","behalf","of","g2pk.G2p",".","g2pk.G2p","is","n't","pickalable","and","it","ca","n't","be","copied","to","the","other","processes","via","multiprocessing","module",".","As","a","workaround",",","g2pk.G2p","is","instantiated","upon","calling","this","class","."]
code: def __call__(self, text) -> List[str]:
      if self.g2p is None:
          import g2pk
  
          self.g2p = g2pk.G2p()
  
      phones = list(
          self.g2p(
              text,
              descriptive=self.descritive,
              group_vowels=self.group_vowels,
              to_syl=self.to_syl,
          )
      )
      if self.no_space:
          # remove space which represents word serapater
          phones = list(filter(lambda s: s != " ", phones))
  
      if self.explicit_space:
          # replace space as explicit space symbol
          phones = list(
              map(
                  lambda s: s if s != " " else self.space_symbol, phones
              )
          )
      return phones
  
imports: import logging
  import re
  import warnings
  from pathlib import Path
  from typing import Iterable, List, Optional, Union
  import g2p_en
  import jamo
  from packaging.version import parse
  from typeguard import check_argument_types
  from espnet2.text.abs_tokenizer import AbsTokenizer
label_desc: Use image node_id 2 for calling the G2pk obj's underlying member method code with example usage: obj.__call__(text) and returns: phones