parameters: (environ, name, paths, subfolders)
return_statement: return prefix_str
docstring: Return the prefix to prepend to the environment variable NAME, adding any path in NEW_PATHS_STR without creating duplicate or empty items.
docstring_summary: Return the prefix to prepend to the environment variable NAME, adding any path in NEW_PATHS_STR without creating duplicate or empty items.
docstring_tokens: Return the prefix to prepend to the environment variable NAME adding any path in NEW_PATHS_STR without creating duplicate or empty items .
function: def _prefix_env_variable(environ, name, paths, subfolders):
      '''
      Return the prefix to prepend to the environment variable NAME, adding any path in NEW_PATHS_STR without creating duplicate or empty items.
      '''
      value = environ[name] if name in environ else ''
      environ_paths = [path for path in value.split(os.pathsep) if path]
      checked_paths = []
      for path in paths:
          if not isinstance(subfolders, list):
              subfolders = [subfolders]
          for subfolder in subfolders:
              path_tmp = path
              if subfolder:
                  path_tmp = os.path.join(path_tmp, subfolder)
              # exclude any path already in env and any path we already added
              if path_tmp not in environ_paths and path_tmp not in checked_paths:
                  checked_paths.append(path_tmp)
      prefix_str = os.pathsep.join(checked_paths)
      if prefix_str != '' and environ_paths:
          prefix_str += os.pathsep
      return prefix_str
function_tokens: def _prefix_env_variable ( environ , name , paths , subfolders ) : value = environ [ name ] if name in environ else '' environ_paths = [ path for path in value . split ( os . pathsep ) if path ] checked_paths = [ ] for path in paths : if not isinstance ( subfolders , list ) : subfolders = [ subfolders ] for subfolder in subfolders : path_tmp = path if subfolder : path_tmp = os . path . join ( path_tmp , subfolder ) # exclude any path already in env and any path we already added if path_tmp not in environ_paths and path_tmp not in checked_paths : checked_paths . append ( path_tmp ) prefix_str = os . pathsep . join ( checked_paths ) if prefix_str != '' and environ_paths : prefix_str += os . pathsep return prefix_str