def edit(self, name, color, description=github.GithubObject.NotSet):
assert isinstance(name, (str, unicode)), name<EOL>assert isinstance(color, (str, unicode)), color<EOL>assert description is github.GithubObject.NotSet or isinstance(description, (str, unicode)), description<EOL>post_parameters = {<EOL>"<STR_LIT:name>": name,<EOL>"<STR_LIT>": color,<EOL>}<EOL>if description is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT:description>"] = description<EOL><DEDENT>headers, data = self._requester.requestJsonAndCheck(<EOL>"<STR_LIT>",<EOL>self.url,<EOL>input=post_parameters,<EOL>headers={'<STR_LIT>': Consts.mediaTypeLabelDescriptionSearchPreview}<EOL>)<EOL>self._useAttributes(data)<EOL>
:calls: `PATCH /repos/:owner/:repo/labels/:name <http://developer.github.com/v3/issues/labels>`_
:param name: string
:param color: string
:param description: string
:rtype: None