144 lines
3.9 KiB
Plaintext
144 lines
3.9 KiB
Plaintext
==================
|
|
for tuple expression
|
|
==================
|
|
|
|
foo = [for v in ["a", "b"]: v]
|
|
|
|
---
|
|
|
|
(config_file
|
|
(body
|
|
(attribute
|
|
(identifier)
|
|
(expression
|
|
(expr_term
|
|
(for_expr
|
|
(for_tuple_expr
|
|
(for_intro
|
|
(identifier)
|
|
(expression
|
|
(expr_term
|
|
(collection_value
|
|
(tuple
|
|
(expression (expr_term (template_expr (quoted_template))))
|
|
(expression (expr_term (template_expr (quoted_template)))))))))
|
|
(expression (expr_term (variable_expr (identifier)))))))))))
|
|
|
|
==================
|
|
for tuple expression with index
|
|
==================
|
|
|
|
foo = [for i, v in ["a", "b"]: i]
|
|
|
|
---
|
|
|
|
(config_file
|
|
(body
|
|
(attribute
|
|
(identifier)
|
|
(expression
|
|
(expr_term
|
|
(for_expr
|
|
(for_tuple_expr
|
|
(for_intro
|
|
(identifier)
|
|
(identifier)
|
|
(expression
|
|
(expr_term
|
|
(collection_value
|
|
(tuple
|
|
(expression (expr_term (template_expr (quoted_template))))
|
|
(expression (expr_term (template_expr (quoted_template)))))))))
|
|
(expression (expr_term (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
|
|
(expr_term
|
|
(for_expr
|
|
(for_tuple_expr
|
|
(for_intro
|
|
(identifier)
|
|
(identifier)
|
|
(expression
|
|
(expr_term
|
|
(collection_value
|
|
(tuple
|
|
(expression (expr_term (template_expr (quoted_template))))
|
|
(expression (expr_term (template_expr (quoted_template))))
|
|
(expression (expr_term (template_expr (quoted_template)))))))))
|
|
(expression (expr_term (variable_expr (identifier))))
|
|
(for_cond
|
|
(expression
|
|
(expr_term
|
|
(function_call
|
|
(identifier)
|
|
(function_arguments (expression (expr_term (variable_expr (identifier))))))))))))))))
|
|
|
|
|
|
==================
|
|
for object expression
|
|
==================
|
|
|
|
foo = {for i, v in ["a", "b"]: v => i}
|
|
|
|
---
|
|
|
|
(config_file
|
|
(body
|
|
(attribute
|
|
(identifier)
|
|
(expression
|
|
(expr_term
|
|
(for_expr
|
|
(for_object_expr
|
|
(for_intro
|
|
(identifier)
|
|
(identifier)
|
|
(expression
|
|
(expr_term
|
|
(collection_value
|
|
(tuple
|
|
(expression (expr_term (template_expr (quoted_template))))
|
|
(expression (expr_term (template_expr (quoted_template)))))))))
|
|
(expression (expr_term (variable_expr (identifier))))
|
|
(expression (expr_term (variable_expr (identifier)))))))))))
|
|
|
|
==================
|
|
for object expression 2
|
|
==================
|
|
|
|
foo = {for i, v in ["a", "b"]: v => i...}
|
|
|
|
---
|
|
|
|
(config_file
|
|
(body
|
|
(attribute
|
|
(identifier)
|
|
(expression
|
|
(expr_term
|
|
(for_expr
|
|
(for_object_expr
|
|
(for_intro
|
|
(identifier)
|
|
(identifier)
|
|
(expression
|
|
(expr_term
|
|
(collection_value
|
|
(tuple
|
|
(expression (expr_term (template_expr (quoted_template))))
|
|
(expression (expr_term (template_expr (quoted_template)))))))))
|
|
(expression (expr_term (variable_expr (identifier))))
|
|
(expression (expr_term (variable_expr (identifier)))) (ellipsis))))))))
|