Add range statements to golang grammar

This commit is contained in:
Max Brunsfeld 2014-06-10 14:11:25 -07:00
parent a42f498c59
commit c91c5cb730
3 changed files with 1070 additions and 743 deletions

View file

@ -61,4 +61,26 @@ func main() {
(if_statement (call_expression (var_name))
(block_statement)
(if_statement (call_expression (var_name))
(block_statement))))))
(block_statement))))))
=============================================
parses range statements
=============================================
package main
func main() {
for k := range theMap() {
println(k)
}
for k, v := range theMap() {
println(k, v)
}
}
---
(program (package_directive (package_name))
(func_declaration (var_name) (block_statement
(range_statement (var_name) (call_expression (var_name)) (block_statement
(expression_statement (call_expression (var_name) (var_name)))))
(range_statement (var_name) (var_name) (call_expression (var_name)) (block_statement
(expression_statement (call_expression (var_name) (var_name) (var_name))))))))