cmd/gorecsel/main.go | 4 ++-- field.go | 4 ++-- go.mod | 4 ++-- r.go | 4 ++-- slog/handler.go | 18 +++++++++--------- slog/handler_test.go | 2 +- w.go | 6 ++---- diff --git a/cmd/gorecsel/main.go b/cmd/gorecsel/main.go index 60b7c70e0ca60c84749fdc7dd115b1ee3970738d9f3d5226b3cef9b409008520..b96a9ce1d4a29ef2375c52e5ed81dcb63a510eefc70b9890d25f6eed6b9ce074 100644 --- a/cmd/gorecsel/main.go +++ b/cmd/gorecsel/main.go @@ -5,7 +5,7 @@ "fmt" "io" "os" - "go.cypherpunks.su/recfile/v2" + "go.cypherpunks.su/recfile/v3" ) func main() { @@ -24,7 +24,7 @@ fmt.Println("") } fmt.Println("Record:", n) for _, field := range fields { - fmt.Printf("%s: %s\n", field.Name, field.Value) + fmt.Printf("%s: %s\n", field.F, field.V) } n++ } diff --git a/field.go b/field.go index e55a1604368d3c45745c5c6955f7daac4dfbe2d119bd6781c4a839c73a5a5d62..9cde50e8d240b1b71a885f87923da6d4c9019ad5064e291844b556e06fb45c5c 100644 --- a/field.go +++ b/field.go @@ -17,6 +17,6 @@ // GNU recutils'es recfiles parser/writer on pure Go package recfile type Field struct { - Name string - Value string + F string + V string } diff --git a/go.mod b/go.mod index bcf2e49c6b2be7d5004829e71f67a77d3651eda409a43e136d263b09127ab67c..cf7b342e39fe79aeafcf78ab117b69a362ee9d784d2a11ab0d0604dad0719851 100644 --- a/go.mod +++ b/go.mod @@ -1,3 +1,3 @@ -module go.cypherpunks.su/recfile/v2 +module go.cypherpunks.su/recfile/v3 -go 1.21 +go 1.24 diff --git a/r.go b/r.go index 8073606631f9502c891c60774232d7bfc89501bdad8ea60ab67729c377fb43db..7400e07f03e1724923a30c38ccfbe995e477afb11700dd922a89c0222442764e 100644 --- a/r.go +++ b/r.go @@ -151,7 +151,7 @@ return nil, err } m := make(map[string]string, len(fields)) for _, f := range fields { - m[f.Name] = f.Value + m[f.F] = f.V } return m, nil } @@ -164,7 +164,7 @@ return nil, err } m := make(map[string][]string) for _, f := range fields { - m[f.Name] = append(m[f.Name], f.Value) + m[f.F] = append(m[f.F], f.V) } return m, nil } diff --git a/slog/handler.go b/slog/handler.go index 53d4680612f49e0a5831316988cd7f2586dcef9661f39aa7a3086dac29f2cc57..12f2d296259815766c1df74408698fcb13d382a10a4c32ae64d35758697f8a4c 100644 --- a/slog/handler.go +++ b/slog/handler.go @@ -23,7 +23,7 @@ "log/slog" "sync" "time" - "go.cypherpunks.su/recfile/v2" + "go.cypherpunks.su/recfile/v3" ) type RecfileHandler struct { @@ -88,15 +88,15 @@ if attr.Value.Kind() == slog.KindAny { multiline, ok := attr.Value.Any().([]string) if ok { if len(multiline) > 0 { - _, err = w.WriteFieldMultiline(group+attr.Key, multiline) + _, err = w.WriteField(group+attr.Key, multiline) return } return } } _, err = w.WriteFields(recfile.Field{ - Name: group + attr.Key, - Value: attr.Value.String(), + F: group + attr.Key, + V: attr.Value.String(), }) return } @@ -111,17 +111,17 @@ } var fields []recfile.Field if h.LevelKey != "" { fields = append(fields, recfile.Field{ - Name: h.LevelKey, - Value: rec.Level.String(), + F: h.LevelKey, + V: rec.Level.String(), }) } if h.TimeKey != "" { fields = append(fields, recfile.Field{ - Name: h.TimeKey, - Value: rec.Time.UTC().Format(time.RFC3339Nano), + F: h.TimeKey, + V: rec.Time.UTC().Format(time.RFC3339Nano), }) } - fields = append(fields, recfile.Field{Name: h.MsgKey, Value: rec.Message}) + fields = append(fields, recfile.Field{F: h.MsgKey, V: rec.Message}) _, err = w.WriteFields(fields...) if err != nil { return diff --git a/slog/handler_test.go b/slog/handler_test.go index 1db3cd6c640ce1795bc4cc2fd0add9cfe7369c87f33bd6b50f69f9820bcdbc76..763dec0763cbad94910ee6073b5ffe3714c17f4a63c0ecc989c45499c0d8f573 100644 --- a/slog/handler_test.go +++ b/slog/handler_test.go @@ -22,7 +22,7 @@ "log/slog" "testing" "time" - "go.cypherpunks.su/recfile/v2" + "go.cypherpunks.su/recfile/v3" ) func TestBasic(t *testing.T) { diff --git a/w.go b/w.go index bfd64f2d0aef47ef9755706a770d8d18e5fbca70aec9884bf36cfbd39e8ceadd..8a2435497f34aabf6b189630dfa3838058769b4212332aebd6692d2f47771e3e 100644 --- a/w.go +++ b/w.go @@ -38,9 +38,7 @@ func (w *Writer) WriteFields(fs ...Field) (written int, err error) { var n int for _, f := range fs { - n, err = w.w.WriteString( - f.Name + ": " + backslashSpace(strings.TrimLeft(f.Value, " ")) + "\n", - ) + n, err = w.WriteField(f.F, strings.Split(f.V, "\n")) written += n if err != nil { return @@ -49,7 +47,7 @@ } return } -func (w *Writer) WriteFieldMultiline(name string, lines []string) (written int, err error) { +func (w *Writer) WriteField(name string, lines []string) (written int, err error) { var n int n, err = w.w.WriteString( name + ": " + backslashSpace(strings.TrimLeft(lines[0], " ")) + "\n",