diff options
| author | gingerBill <bill@gingerbill.org> | 2019-12-22 12:03:48 +0000 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2019-12-22 12:03:48 +0000 |
| commit | d1c9fd4e012e16cee73e9ef0af716caf34430d81 (patch) | |
| tree | 048a9dd6ed2294d685761e31081620a924ee6ef9 /core/encoding/json/validator.odin | |
| parent | 45937306321df28266c793b7225eb10ad3d741e2 (diff) | |
Implement `#complete switch` by default, replace with `#partial switch` #511
Diffstat (limited to 'core/encoding/json/validator.odin')
| -rw-r--r-- | core/encoding/json/validator.odin | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/core/encoding/json/validator.odin b/core/encoding/json/validator.odin index 17073f102..77339bbc3 100644 --- a/core/encoding/json/validator.odin +++ b/core/encoding/json/validator.odin @@ -91,28 +91,27 @@ validate_array :: proc(p: ^Parser) -> bool { validate_value :: proc(p: ^Parser) -> bool { token := p.curr_token; - using Kind; - switch token.kind { - case Null, False, True: + #partial switch token.kind { + case .Null, .False, .True: advance_token(p); return true; - case Integer, Float: + case .Integer, .Float: advance_token(p); return true; - case String: + case .String: advance_token(p); return is_valid_string_literal(token.text, p.spec); - case Open_Brace: + case .Open_Brace: return validate_object(p); - case Open_Bracket: + case .Open_Bracket: return validate_array(p); case: if p.spec == Specification.JSON5 { - switch token.kind { - case Infinity, NaN: + #partial switch token.kind { + case .Infinity, .NaN: advance_token(p); return true; } |