#NEWLINE# def parse_comma_separated( tokens ) : #NEWLINE# #INDENT# 'Parse a list of tokens (typically the content of a function token)\n    as arguments made of a single token each, separated by mandatory commas,\n    with optional white space around each argument.\n\n    return the argument list without commas or white space;\n    or None if the function token content do not match the description above.\n\n    ' #NEWLINE# tokens = [ token for token in tokens if ( token . type != 'S' ) ] #NEWLINE# if ( not tokens ) : #NEWLINE# #INDENT# return [ ] #NEWLINE# #UNINDENT# if ( ( ( len ( tokens ) % 2 ) == 1 ) and all ( ( ( ( tokens . type == 'DELIM' ) and ( token . value == ',' ) ) for token in tokens [ 1 : : 2 ] ) ) ) : #NEWLINE# #INDENT# return tokens [ : : 2 ]