parser: minor cleanup in call_args() (#9344)

pull/9352/head
yuyi 2021-03-18 21:06:48 +08:00 committed by GitHub
parent f28e67d526
commit a6c2c5ba88
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 8 additions and 8 deletions

View File

@ -128,21 +128,21 @@ pub fn (mut p Parser) call_args() []ast.CallArg {
p.next()
array_decompose = true
}
mut e := ast.Expr{}
mut expr := ast.Expr{}
if p.tok.kind == .name && p.peek_tok.kind == .colon {
// `foo(key:val, key2:val2)`
e = p.struct_init(true) // short_syntax:true
expr = p.struct_init(true) // short_syntax:true
} else {
e = p.expr(0)
expr = p.expr(0)
}
if array_decompose {
e = ast.ArrayDecompose{
expr: e
expr = ast.ArrayDecompose{
expr: expr
pos: p.tok.position()
}
}
if mut e is ast.StructInit {
e.pre_comments << comments
if mut expr is ast.StructInit {
expr.pre_comments << comments
comments = []ast.Comment{}
}
pos := arg_start_pos.extend(p.prev_tok.position())
@ -150,7 +150,7 @@ pub fn (mut p Parser) call_args() []ast.CallArg {
args << ast.CallArg{
is_mut: is_mut
share: table.sharetype_from_flags(is_shared, is_atomic)
expr: e
expr: expr
comments: comments
pos: pos
}