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

def get_method_descriptor(self, class_name, method_name, descriptor):
        """
        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
        """
        key = class_name + method_name + descriptor

        if self.__cache_methods is None:
            self.__cache_methods = {}
            for i in self.get_classes():
                for j in i.get_methods():
                    self.__cache_methods[j.get_class_name() + j.get_name() +
                                         j.get_descriptor()] = j

        return self.__cache_methods.get(key)