nodes: 0, module; 1, function_definition; 2, function_name:list; 3, parameters; 4, block; 5, identifier:self; 6, expression_statement; 7, expression_statement; 8, for_statement; 9, expression_statement; 10, return_statement; 11, comment:"""
          List all backups as WorkspaceBackup objects, sorted descending by lastmod.
          """; 12, assignment; 13, identifier:d; 14, call; 15, block; 16, call; 17, identifier:backups; 18, identifier:backups; 19, list; 20, identifier:glob; 21, argument_list; 22, expression_statement; 23, attribute; 24, argument_list; 25, call; 26, call; 27, identifier:backups; 28, identifier:sort; 29, keyword_argument; 30, keyword_argument; 31, identifier:join; 32, argument_list; 33, attribute; 34, argument_list; 35, identifier:key; 36, lambda; 37, identifier:reverse; 38, True; 39, attribute; 40, string; 41, identifier:backups; 42, identifier:append; 43, call; 44, lambda_parameters; 45, attribute; 46, identifier:self; 47, identifier:backup_directory; 48, string_content:*; 49, attribute; 50, argument_list; 51, identifier:b; 52, identifier:b; 53, identifier:lastmod; 54, identifier:WorkspaceBackup; 55, identifier:from_path; 56, identifier:d
code: def list(self):
          """
          List all backups as WorkspaceBackup objects, sorted descending by lastmod.
          """
          backups = []
          for d in glob(join(self.backup_directory, '*')):
              backups.append(WorkspaceBackup.from_path(d))
          backups.sort(key=lambda b: b.lastmod, reverse=True)
          return backups