code: def binary(self, name):
      
      if not isinstance(name, str):
        raise ValueError('name must be a binary name, given {} of type {}'.format(name, type(name)))
      self.validate()
      return self._validated_executable(name)
docs: Returns the path to the command of the given name for this distribution.
  
      For example: ::
  
          >>> d = Distribution()
          >>> jar = d.binary('jar')
          >>> jar
          '/usr/bin/jar'
          >>>
  
      If this distribution has no valid command of the given name raises Distribution.Error.
      If this distribution is a JDK checks both `bin` and `jre/bin` for the binary.