docs: def get_decorated_names(path,decorator_module, decorator_name):
      '''
          Get the name of fumctions or methods decorated with the specified decorator.
          If a method, the name will be as class_name.method_name.
          Args :
              path                : The path to the module.
              decorator_module    : The name of the module defining the decorator.
              decorator_name      : The name of the decorator.
      '''
      #Read the source
      with open(path) as f:
          module_source   = f.read()
  
      expression          = '\s*@(?:{}\.)?{}[\s\S]+?(?:instance_creator\s*=\s*([\w.]+)[\s\S]+?)?\s*def\s+(\w+)\s*\(\s*(self)?'.format(decorator_module, decorator_name)
      methods             = re.compile(expression).findall(module_source)
      decorateds          = [x[1] for x in methods]
      instance_creators   = [x[0] if x[0] != '' else None for x in methods]
      is_methods          = [x[2]!='' for x in methods]
      result                      = []
      class_name_expression       = '\s*(?:class\s+(\w+)\s*\(.*\:\n[\s\S]+?)+?\s+def\s+{}\s*\('
  
      #Get class names for methods
      for i in range(len(decorateds)) :
          decorated   = decorateds[i]
          #If a method
          if is_methods[i] :
              #Get the class name
              index           = decorateds[:i].count(decorated)
              class_name      = re.compile(class_name_expression.format(decorated)).findall(module_source)[index]
              original_name   = decorated
              instance_creator= instance_creators[i]
              if decorated[:2] =='__' :
                  decorated = '_'+ class_name+ decorated
              result.append({'name': decorated, 'class_name': class_name, 'instance_creator': instance_creator})
          else :
              result.append({'name': decorated})
      if DEBUG :
          print(
              decorateds          ,
              instance_creators   ,
              is_methods          ,
              result
              )
      return result