def get_method_descriptor(self, class_name, method_name, descriptor):
key = class_name + method_name + descriptor<EOL>if self.__cache_methods == None:<EOL><INDENT>self.__cache_methods = {}<EOL>for i in self.classes.class_def:<EOL><INDENT>for j in i.get_methods():<EOL><INDENT>self.__cache_methods[j.get_class_name() + j.get_name() +<EOL>j.get_descriptor()] = j<EOL><DEDENT><DEDENT><DEDENT>return self.__cache_methods.get(key)<EOL>
Return the specific method

:param class_name: the class name of the method
:type class_name: string
:param method_name: the name of the method
:type method_name: string
:param descriptor: the descriptor of the method
:type descriptor: string

:rtype: None or a :class:`EncodedMethod` object