(self, path, loc=None, replace=False)
return
Ensure self.location is on path

        If replace=False (default):
            - If location is already in path anywhere, do nothing.
            - Else:
              - If it's an egg and its parent directory is on path,
                insert just ahead of the parent.
              - Else: add to the end of path.
        If replace=True:
            - If location is already on path anywhere (not eggs)
              or higher priority than its parent (eggs)
              do nothing.
            - Else:
              - If it's an egg and its parent directory is on path,
                insert just ahead of the parent,
                removing any lower-priority entries.
              - Else: add it to the front of path.
Ensure self.location is on path
Ensure self . location is on path
def insert_on(self, path, loc=None, replace=False):
        """Ensure self.location is on path

        If replace=False (default):
            - If location is already in path anywhere, do nothing.
            - Else:
              - If it's an egg and its parent directory is on path,
                insert just ahead of the parent.
              - Else: add to the end of path.
        If replace=True:
            - If location is already on path anywhere (not eggs)
              or higher priority than its parent (eggs)
              do nothing.
            - Else:
              - If it's an egg and its parent directory is on path,
                insert just ahead of the parent,
                removing any lower-priority entries.
              - Else: add it to the front of path.
        """

        loc = loc or self.location
        if not loc:
            return

        nloc = _normalize_cached(loc)
        bdir = os.path.dirname(nloc)
        npath = [(p and _normalize_cached(p) or p) for p in path]

        for p, item in enumerate(npath):
            if item == nloc:
                if replace:
                    break
                else:
                    # don't modify path (even removing duplicates) if
                    # found and not replace
                    return
            elif item == bdir and self.precedence == EGG_DIST:
                # if it's an .egg, give it precedence over its directory
                # UNLESS it's already been added to sys.path and replace=False
                if (not replace) and nloc in npath[p:]:
                    return
                if path is sys.path:
                    self.check_version_conflict()
                path.insert(p, loc)
                npath.insert(p, nloc)
                break
        else:
            if path is sys.path:
                self.check_version_conflict()
            if replace:
                path.insert(0, loc)
            else:
                path.append(loc)
            return

        # p is the spot where we found or inserted loc; now remove duplicates
        while True:
            try:
                np = npath.index(nloc, p + 1)
            except ValueError:
                break
            else:
                del npath[np], path[np]
                # ha!
                p = np

        return
def insert_on ( self , path , loc = None , replace = False ) : loc = loc or self . location if not loc : return nloc = _normalize_cached ( loc ) bdir = os . path . dirname ( nloc ) npath = [ ( p and _normalize_cached ( p ) or p ) for p in path ] for p , item in enumerate ( npath ) : if item == nloc : if replace : break else : # don't modify path (even removing duplicates) if # found and not replace return elif item == bdir and self . precedence == EGG_DIST : # if it's an .egg, give it precedence over its directory # UNLESS it's already been added to sys.path and replace=False if ( not replace ) and nloc in npath [ p : ] : return if path is sys . path : self . check_version_conflict ( ) path . insert ( p , loc ) npath . insert ( p , nloc ) break else : if path is sys . path : self . check_version_conflict ( ) if replace : path . insert ( 0 , loc ) else : path . append ( loc ) return # p is the spot where we found or inserted loc; now remove duplicates while True : try : np = npath . index ( nloc , p + 1 ) except ValueError : break else : del npath [ np ] , path [ np ] # ha! p = np return