@classmethod<EOL><INDENT>def get_type_name_in_language(cls, type_name, sub_type, language):<DEDENT>
if language in cls.type_methods_cache:<EOL><INDENT>m = cls.type_methods_cache[language]<EOL>if not m:<EOL><INDENT>return type_name<EOL><DEDENT>return m(type_name)<EOL><DEDENT>found, method = load_language_plugins(language, '<STR_LIT>')<EOL>if found:<EOL><INDENT>cls.type_methods_cache[language] = method<EOL>if method:<EOL><INDENT>return method(type_name, sub_type)<EOL><DEDENT>else:<EOL><INDENT>return type_name<EOL><DEDENT><DEDENT>module = importlib.import_module('<STR_LIT>' % language, package="<STR_LIT>")<EOL>if not hasattr(module, '<STR_LIT>'):<EOL><INDENT>cls.type_methods_cache[language] = None<EOL>return type_name<EOL><DEDENT>method = getattr(module, '<STR_LIT>')<EOL>cls.type_methods_cache[language] = method<EOL>return method(type_name, sub_type)<EOL>
Get the type for the given language

            Args:
                type_name (str): the type to convert
                language (str): the language to use

            Returns:
                a type name in the given language

            Example:
                get_type_name_in_language("Varchar", "python")
                >>> str