code: def register_submodule(parent, name, module=None):
      """
      This registers and attaches a new submodule to the parent module.
      :param parent: the parent module to which the submodule will be created and attached.
      :param name: the name of the submodule or None if no submodule is used.
      :param module: the optional submodule to register, if not specified then a new empty module is created
      :return: the module name for the (newly) registered submodule.
      """
      mod_name = ".".join([parent.__name__, name])
      mod = register_module(mod_name, module=module)
      setattr(parent, name, mod)
      return mod_name
  
file_path: h2o-3/h2o-py/h2o/utils/mixin.py
imports: import copy
  from importlib import import_module
  import sys
  import types
label_desc: Use image node_id 3 for calling a global function with example usage: register_submodule(parent, name, module) and returns: mod_name