code: def __driver_helper(self, line):
          
          if line.strip() == '?':
              self.stdout.write('\n')
              self.stdout.write(self.doc_string())
          else:
              toks = shlex.split(line[:-1])
              try:
                  msg = self.__get_help_message(toks)
              except Exception as e:
                  self.stderr.write('\n')
                  self.stderr.write(traceback.format_exc())
                  self.stderr.flush()
              self.stdout.write('\n')
              self.stdout.write(msg)
          # Restore the prompt and the original input.
          self.stdout.write('\n')
          self.stdout.write(self.prompt)
          self.stdout.write(line)
          self.stdout.flush()
docs: Driver level helper method.
  
          1.  Display help message for the given input. Internally calls
              self.__get_help_message() to obtain the help message.
          2.  Re-display the prompt and the input line.
  
          Arguments:
              line: The input line.
  
          Raises:
              Errors from helper methods print stack trace without terminating
              this shell. Other exceptions will terminate this shell.