Files
tree-sitter-jhcl/test/corpus/for_expressions.txt
mhoffm 380571cc1a * add field names to object elements
* dont hide template interpolation start/end and quoted template start/end tokens
2021-07-02 08:34:28 +02:00

205 lines
6.5 KiB
Plaintext

================================================================================
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)))))))