def set_path(self, path, val):
        """
        Set the given value at the supplied path where path is either
        a tuple of strings or a string in A.B.C format.
        """
        path = tuple(path.split('.')) if isinstance(path , str) else tuple(path)

        disallowed = [p for p in path if not type(self)._sanitizer.allowable(p)]
        if any(disallowed):
            raise Exception("Attribute strings in path elements cannot be "
                            "correctly escaped : %s" % ','.join(repr(el) for el in disallowed))
        if len(path) > 1:
            attrtree = self.__getattr__(path[0])
            attrtree.set_path(path[1:], val)
        else:
            self.__setattr__(path[0], val)
def set_path ( self , path , val ) : path = tuple ( path . split ( '.' ) ) if isinstance ( path , str ) else tuple ( path ) disallowed = [ p for p in path if not type ( self ) . _sanitizer . allowable ( p ) ] if any ( disallowed ) : raise Exception ( "Attribute strings in path elements cannot be " "correctly escaped : %s" % ',' . join ( repr ( el ) for el in disallowed ) ) if len ( path ) > 1 : attrtree = self . __getattr__ ( path [ 0 ] ) attrtree . set_path ( path [ 1 : ] , val ) else : self . __setattr__ ( path [ 0 ] , val )
Set the given value at the supplied path where path is either
        a tuple of strings or a string in A.B.C format.