code: def get_field_descriptor(self, class_name, field_name, descriptor):
          
  
          key = class_name + field_name + descriptor
  
          if self.__cache_fields is None:
              self.__cache_fields = {}
              for i in self.get_classes():
                  for j in i.get_fields():
                      self.__cache_fields[j.get_class_name() + j.get_name() +
                                          j.get_descriptor()] = j
  
          return self.__cache_fields.get(key)
docs: Return the specific field
  
          :param class_name: the class name of the field
          :type class_name: string
          :param field_name: the name of the field
          :type field_name: string
          :param descriptor: the descriptor of the field
          :type descriptor: string
  
          :rtype: None or a :class:`EncodedField` object