================================================================================ for tuple expression ================================================================================ foo = [for v in ["a", "b"]: v] -------------------------------------------------------------------------------- (config_file (body (attribute (identifier) (expression (for_expr (for_tuple_expr (for_intro (identifier) (expression (collection_value (tuple (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))) (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))))))) (expression (variable_expr (identifier))))))))) ================================================================================ for tuple expression with index ================================================================================ foo = [for i, v in ["a", "b"]: i] -------------------------------------------------------------------------------- (config_file (body (attribute (identifier) (expression (for_expr (for_tuple_expr (for_intro (identifier) (identifier) (expression (collection_value (tuple (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))) (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))))))) (expression (variable_expr (identifier))))))))) ================================================================================ for tuple expression with predicate ================================================================================ foo = [for i, v in ["a", "b", "c"]: v if pred(i)] -------------------------------------------------------------------------------- (config_file (body (attribute (identifier) (expression (for_expr (for_tuple_expr (for_intro (identifier) (identifier) (expression (collection_value (tuple (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))) (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))) (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))))))) (expression (variable_expr (identifier))) (for_cond (expression (function_call (identifier) (function_arguments (expression (variable_expr (identifier))))))))))))) ================================================================================ for object expression ================================================================================ foo = {for i, v in ["a", "b"]: v => i} -------------------------------------------------------------------------------- (config_file (body (attribute (identifier) (expression (for_expr (for_object_expr (for_intro (identifier) (identifier) (expression (collection_value (tuple (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))) (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))))))) (expression (variable_expr (identifier))) (expression (variable_expr (identifier))))))))) ================================================================================ for object expression 2 ================================================================================ foo = {for i, v in ["a", "b"]: v => i...} -------------------------------------------------------------------------------- (config_file (body (attribute (identifier) (expression (for_expr (for_object_expr (for_intro (identifier) (identifier) (expression (collection_value (tuple (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))) (expression (literal_value (string_lit (quoted_template_start) (template_literal) (quoted_template_end)))))))) (expression (variable_expr (identifier))) (expression (variable_expr (identifier))) (ellipsis)))))))