From ba53efe040ee14271deb30da96c07bfe13a6c65d Mon Sep 17 00:00:00 2001 From: StunxFS Date: Sun, 5 Nov 2023 10:13:21 -0400 Subject: [PATCH] refact(rivetc+rivet): use `:=` for for fields with default values --- lib/rivet/src/ast/Expr.ri | 4 ++-- lib/rivet/src/ast/Sym.ri | 2 +- lib/rivet/src/ast/TypeSym.ri | 2 +- lib/rivet/src/checker/mod.ri | 2 +- lib/rivet/src/codegen/mir/Block.ri | 2 +- lib/rivet/src/parser/decls.ri | 2 +- lib/rivet/src/prefs/mod.ri | 14 +++++++------- lib/rivet/src/report/mod.ri | 2 +- lib/rivet/src/resolver/Register.ri | 2 +- lib/rivet/src/resolver/mod.ri | 2 +- lib/rivet/src/tokenizer/mod.ri | 2 +- lib/std/src/flag/mod.ri | 4 ++-- rivetc/src/parser.py | 2 +- tests/valid/src/embedded_structs.ri | 2 +- 14 files changed, 22 insertions(+), 22 deletions(-) diff --git a/lib/rivet/src/ast/Expr.ri b/lib/rivet/src/ast/Expr.ri index 06483a84e..1014e874c 100644 --- a/lib/rivet/src/ast/Expr.ri +++ b/lib/rivet/src/ast/Expr.ri @@ -30,7 +30,7 @@ public enum Expr < traits.Stringable { mut is_sym: bool; mut found: bool; mut sym: Sym; - mut builtin: Builtin = .Invalid(); + mut builtin: Builtin := .Invalid(); pos: token.Pos; mut type: Type; }, @@ -207,7 +207,7 @@ public enum Expr < traits.Stringable { args: []CallArg; vec_is_mut: bool; pos: token.Pos; - mut builtin: Builtin = .Invalid(); + mut builtin: Builtin := .Invalid(); mut type: Type; }, Unary { diff --git a/lib/rivet/src/ast/Sym.ri b/lib/rivet/src/ast/Sym.ri index 6b166e033..43fef16ae 100644 --- a/lib/rivet/src/ast/Sym.ri +++ b/lib/rivet/src/ast/Sym.ri @@ -48,7 +48,7 @@ public enum ABI as uint8 < traits.Stringable { #[default_value(InvalidSym())] public trait Sym { - id: usize = new_sym_id(); + id: usize := new_sym_id(); abi: ABI; mut is_public: bool; mut parent: ?Sym; diff --git a/lib/rivet/src/ast/TypeSym.ri b/lib/rivet/src/ast/TypeSym.ri index 545fdea42..bd17df1aa 100644 --- a/lib/rivet/src/ast/TypeSym.ri +++ b/lib/rivet/src/ast/TypeSym.ri @@ -17,7 +17,7 @@ public struct Field { public struct TypeSym < Sym { public mut fields: []Field; public mut full_fields_: []Field; - public mut info: TypeInfo = .Invalid(); + public mut info: TypeInfo := .Invalid(); public mut size: usize; public mut align: usize; public mut default_value: ?Expr; diff --git a/lib/rivet/src/checker/mod.ri b/lib/rivet/src/checker/mod.ri index b8bd90f60..5d8d613ad 100644 --- a/lib/rivet/src/checker/mod.ri +++ b/lib/rivet/src/checker/mod.ri @@ -14,7 +14,7 @@ public struct Checker { mut prefs: prefs.Prefs; mut source_file: ast.SourceFile; - mut sym: ast.Sym = ast.InvalidSym(); + mut sym: ast.Sym := ast.InvalidSym(); mut cur_fn: ast.Func; mut inside_extern: bool; diff --git a/lib/rivet/src/codegen/mir/Block.ri b/lib/rivet/src/codegen/mir/Block.ri index c9efdd1a0..8aacd7bf2 100644 --- a/lib/rivet/src/codegen/mir/Block.ri +++ b/lib/rivet/src/codegen/mir/Block.ri @@ -44,7 +44,7 @@ public enum Stmt < traits.Stringable { }, Return { has_expr: bool; - expr: Expr = .Empty(); + expr: Expr := .Empty(); }; public func to_string(self) -> string { diff --git a/lib/rivet/src/parser/decls.ri b/lib/rivet/src/parser/decls.ri index 8a28c882a..6cda4fb50 100644 --- a/lib/rivet/src/parser/decls.ri +++ b/lib/rivet/src/parser/decls.ri @@ -425,7 +425,7 @@ extend Parser { name := self.parse_name(); self.expect(.Colon); type := self.parse_type(); - has_def_expr := self.accept(.Assign); + has_def_expr := self.accept(.DeclAssign); def_expr := if has_def_expr { self.parse_expr() } else { diff --git a/lib/rivet/src/prefs/mod.ri b/lib/rivet/src/prefs/mod.ri index 39f179a0b..3a449dac8 100644 --- a/lib/rivet/src/prefs/mod.ri +++ b/lib/rivet/src/prefs/mod.ri @@ -45,13 +45,13 @@ public enum LinkMode as uint8 { #[boxed] public struct Prefs { // Target info - public mut target_os: sys.OS = sys.os(); - public mut target_arch: sys.Arch = sys.arch(); - public mut target_is_64bit: bool = sys.is_64bit(); - public mut target_is_little_endian: bool = sys.is_little_endian(); - public mut target_c_runtime: sys.CRuntime = sys.c_runtime(); + public mut target_os: sys.OS := sys.os(); + public mut target_arch: sys.Arch := sys.arch(); + public mut target_is_64bit: bool := sys.is_64bit(); + public mut target_is_little_endian: bool := sys.is_little_endian(); + public mut target_c_runtime: sys.CRuntime := sys.c_runtime(); public mut target_backend: Backend; - public mut target_backend_compiler: string = "cc"; + public mut target_backend_compiler: string := "cc"; // Module info public mut input: string; @@ -66,7 +66,7 @@ public struct Prefs { public mut run_output: bool; public mut run_output_args: []string; - public mut library_path: []string = [rivetcLibDir, libDir]; + public mut library_path: []string := [rivetcLibDir, libDir]; public mut libraries_to_link: []string; public mut objects_to_link: []string; diff --git a/lib/rivet/src/report/mod.ri b/lib/rivet/src/report/mod.ri index 1f8516ed0..1f0010692 100644 --- a/lib/rivet/src/report/mod.ri +++ b/lib/rivet/src/report/mod.ri @@ -68,7 +68,7 @@ public func warn_builder(msg: string, pos: token.Pos) -> ReportBuilder { public struct ReportBuilder { mut kind: ReportKind; msg: string; - pos: token.Pos = token.noPos; + pos: token.Pos := token.noPos; mut attributes: []Attribute; #[inline] diff --git a/lib/rivet/src/resolver/Register.ri b/lib/rivet/src/resolver/Register.ri index aabbab739..5f9749fe6 100644 --- a/lib/rivet/src/resolver/Register.ri +++ b/lib/rivet/src/resolver/Register.ri @@ -16,7 +16,7 @@ public struct Register { mut is_core_mod: bool; mut abi: ast.ABI; - mut sym: ast.Sym = ast.InvalidSym(); + mut sym: ast.Sym := ast.InvalidSym(); mut source_file: ast.SourceFile; public func walk_files(mut self, source_files: []ast.SourceFile) { diff --git a/lib/rivet/src/resolver/mod.ri b/lib/rivet/src/resolver/mod.ri index 2f59a4a61..57865e835 100644 --- a/lib/rivet/src/resolver/mod.ri +++ b/lib/rivet/src/resolver/mod.ri @@ -19,7 +19,7 @@ public struct Resolver { mut table: ast.Table; mut prefs: prefs.Prefs; - mut sym: ast.Sym = ast.InvalidSym(); + mut sym: ast.Sym := ast.InvalidSym(); mut self_sym: ast.TypeSym; mut preludes: []Prelude; diff --git a/lib/rivet/src/tokenizer/mod.ri b/lib/rivet/src/tokenizer/mod.ri index ebfabd07f..ddadbde76 100644 --- a/lib/rivet/src/tokenizer/mod.ri +++ b/lib/rivet/src/tokenizer/mod.ri @@ -20,7 +20,7 @@ const NUM_SEP := b'_'; public struct Tokenizer { table: ast.Table; prefs: prefs.Prefs; - file: string = ""; + file: string := ""; text: string; mut pos: usize; mut line: usize; diff --git a/lib/std/src/flag/mod.ri b/lib/std/src/flag/mod.ri index a56f8d5e0..3b65147bc 100644 --- a/lib/std/src/flag/mod.ri +++ b/lib/std/src/flag/mod.ri @@ -55,8 +55,8 @@ public struct FlagParser { /// $ /// $ ... public mut usage_examples: []string; - public mut default_help_label: string = "Display this help and exit."; - public mut default_version_label: string = "Show version information and exit."; + public mut default_help_label: string := "Display this help and exit."; + public mut default_version_label: string := "Show version information and exit."; public mut flags: []Flag; /// The current list of processed args. public mut args: []string; diff --git a/rivetc/src/parser.py b/rivetc/src/parser.py index ad3832a22..54c73249c 100644 --- a/rivetc/src/parser.py +++ b/rivetc/src/parser.py @@ -437,7 +437,7 @@ def parse_field_decl(self, attributes, doc_comment, is_public): name = self.parse_name() self.expect(Kind.Colon) typ = self.parse_type() - has_def_expr = self.accept(Kind.Assign) + has_def_expr = self.accept(Kind.DeclAssign) def_expr = None if has_def_expr: def_expr = self.parse_expr() diff --git a/tests/valid/src/embedded_structs.ri b/tests/valid/src/embedded_structs.ri index 62b65fd52..ca67d5ae3 100644 --- a/tests/valid/src/embedded_structs.ri +++ b/tests/valid/src/embedded_structs.ri @@ -1,5 +1,5 @@ struct D { - m: uint8 = 155; + m: uint8 := 155; } struct E < D {