all: remove `var` key
parent
20013e4b4b
commit
9971c58ca3
|
@ -77,7 +77,7 @@ pub fn (mut p Parser) assign_expr(left ast.Expr) ast.AssignExpr {
|
||||||
fn (mut p Parser) parse_assign_lhs() []ast.Ident {
|
fn (mut p Parser) parse_assign_lhs() []ast.Ident {
|
||||||
mut idents := []ast.Ident{}
|
mut idents := []ast.Ident{}
|
||||||
for {
|
for {
|
||||||
is_mut := p.tok.kind == .key_mut || p.tok.kind == .key_var
|
is_mut := p.tok.kind == .key_mut
|
||||||
if is_mut {
|
if is_mut {
|
||||||
p.next()
|
p.next()
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,7 +110,7 @@ fn (mut p Parser) fn_decl() ast.FnDecl {
|
||||||
if p.tok.kind == .lpar {
|
if p.tok.kind == .lpar {
|
||||||
p.next() // (
|
p.next() // (
|
||||||
is_method = true
|
is_method = true
|
||||||
rec_mut = p.tok.kind in [.key_var, .key_mut]
|
rec_mut = p.tok.kind == .key_mut
|
||||||
if rec_mut {
|
if rec_mut {
|
||||||
p.next() // `mut`
|
p.next() // `mut`
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,8 +23,8 @@ fn (mut p Parser) for_stmt() ast.Stmt {
|
||||||
pos: pos
|
pos: pos
|
||||||
is_inf: true
|
is_inf: true
|
||||||
}
|
}
|
||||||
} else if p.tok.kind in [.key_mut, .key_var] {
|
} else if p.tok.kind == .key_mut {
|
||||||
p.error('`var` is not needed in for loops')
|
p.error('`mut` is not needed in for loops')
|
||||||
} else if p.peek_tok.kind in [.decl_assign, .assign, .semicolon] || p.tok.kind == .semicolon {
|
} else if p.peek_tok.kind in [.decl_assign, .assign, .semicolon] || p.tok.kind == .semicolon {
|
||||||
// `for i := 0; i < 10; i++ {`
|
// `for i := 0; i < 10; i++ {`
|
||||||
mut init := ast.Stmt{}
|
mut init := ast.Stmt{}
|
||||||
|
@ -76,7 +76,6 @@ fn (mut p Parser) for_stmt() ast.Stmt {
|
||||||
val_var_pos = p.tok.position()
|
val_var_pos = p.tok.position()
|
||||||
key_var_name = val_var_name
|
key_var_name = val_var_name
|
||||||
val_var_name = p.check_name()
|
val_var_name = p.check_name()
|
||||||
|
|
||||||
if p.scope.known_var(key_var_name) {
|
if p.scope.known_var(key_var_name) {
|
||||||
p.error('redefinition of key iteration variable `$key_var_name`')
|
p.error('redefinition of key iteration variable `$key_var_name`')
|
||||||
}
|
}
|
||||||
|
|
|
@ -86,7 +86,7 @@ fn (mut p Parser) match_expr() ast.MatchExpr {
|
||||||
match_first_pos := p.tok.position()
|
match_first_pos := p.tok.position()
|
||||||
p.inside_match = true
|
p.inside_match = true
|
||||||
p.check(.key_match)
|
p.check(.key_match)
|
||||||
is_mut := p.tok.kind in [.key_mut, .key_var]
|
is_mut := p.tok.kind == .key_mut
|
||||||
mut is_sum_type := false
|
mut is_sum_type := false
|
||||||
if is_mut {
|
if is_mut {
|
||||||
p.next()
|
p.next()
|
||||||
|
@ -106,8 +106,9 @@ fn (mut p Parser) match_expr() ast.MatchExpr {
|
||||||
if p.tok.kind == .key_else {
|
if p.tok.kind == .key_else {
|
||||||
is_else = true
|
is_else = true
|
||||||
p.next()
|
p.next()
|
||||||
} else if p.tok.kind == .name && !(p.tok.lit == 'C' && p.peek_tok.kind == .dot) && (p.tok.lit in table.builtin_type_names || (p.tok.lit[0].is_capital() &&
|
} else if p.tok.kind == .name && !(p.tok.lit == 'C' && p.peek_tok.kind == .dot) &&
|
||||||
!p.tok.lit.is_upper()) || p.peek_tok.kind == .dot) {
|
(p.tok.lit in table.builtin_type_names || (p.tok.lit[0].is_capital() && !p.tok.lit.is_upper()) ||
|
||||||
|
p.peek_tok.kind == .dot) {
|
||||||
// Sum type match
|
// Sum type match
|
||||||
typ := p.parse_type()
|
typ := p.parse_type()
|
||||||
exprs << ast.Type{
|
exprs << ast.Type{
|
||||||
|
|
|
@ -398,7 +398,7 @@ pub fn (mut p Parser) stmt() ast.Stmt {
|
||||||
pos: assert_pos
|
pos: assert_pos
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.key_mut, .key_static, .key_var {
|
.key_mut, .key_static {
|
||||||
return p.assign_stmt()
|
return p.assign_stmt()
|
||||||
}
|
}
|
||||||
.key_for {
|
.key_for {
|
||||||
|
|
|
@ -120,7 +120,6 @@ pub enum Kind {
|
||||||
key_pub
|
key_pub
|
||||||
key_static
|
key_static
|
||||||
key_unsafe
|
key_unsafe
|
||||||
key_var
|
|
||||||
keyword_end
|
keyword_end
|
||||||
_end_
|
_end_
|
||||||
}
|
}
|
||||||
|
@ -246,7 +245,6 @@ fn build_token_str() []string {
|
||||||
s[Kind.key_none] = 'none'
|
s[Kind.key_none] = 'none'
|
||||||
s[Kind.key_offsetof] = '__offsetof'
|
s[Kind.key_offsetof] = '__offsetof'
|
||||||
s[Kind.key_is] = 'is'
|
s[Kind.key_is] = 'is'
|
||||||
s[Kind.key_var] = 'var'
|
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue