nodes: 0, module; 1, function_definition; 2, function_name:generate_classes; 3, parameters; 4, block; 5, identifier:self; 6, identifier:items; 7, expression_statement; 8, expression_statement; 9, for_statement; 10, expression_statement; 11, expression_statement; 12, return_statement; 13, string:"Generate classes from `items` by taking the sorted unique values."; 14, assignment; 15, identifier:c; 16, identifier:items; 17, block; 18, assignment; 19, call; 20, identifier:classes; 21, identifier:classes; 22, call; 23, expression_statement; 24, identifier:classes; 25, call; 26, attribute; 27, argument_list; 28, identifier:set; 29, argument_list; 30, assignment; 31, identifier:list; 32, argument_list; 33, identifier:classes; 34, identifier:sort; 35, identifier:classes; 36, call; 37, identifier:classes; 38, attribute; 39, argument_list; 40, identifier:classes; 41, identifier:union; 42, call; 43, identifier:set; 44, argument_list; 45, identifier:c
code: def generate_classes(self, items):
          "Generate classes from `items` by taking the sorted unique values."
          classes = set()
          for c in items: classes = classes.union(set(c))
          classes = list(classes)
          classes.sort()
          return classes