Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 0 additions & 29 deletions cmd/protoc-gen-go-tableau-loader/code.go

This file was deleted.

69 changes: 0 additions & 69 deletions cmd/protoc-gen-go-tableau-loader/error.go

This file was deleted.

26 changes: 26 additions & 0 deletions cmd/protoc-gen-go-tableau-loader/errors.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package main

import (
"path/filepath"

"google.golang.org/protobuf/compiler/protogen"
)

// generateError generates related error files.
func generateError(gen *protogen.Plugin) {
filename := filepath.Join("errors." + pcExt + ".go")
g := gen.NewGeneratedFile(filename, "")
generateCommonHeader(gen, g)
g.P()
g.P("package ", *pkg)
g.P()
g.P(staticErrorContent)
g.P()
}

const staticErrorContent = `
import (
"errors"
)

var ErrNotFound = errors.New("not found")`
1 change: 0 additions & 1 deletion cmd/protoc-gen-go-tableau-loader/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ func main() {
}
generateHub(gen)
generateError(gen)
generateCode(gen)
return nil
})
}
8 changes: 2 additions & 6 deletions cmd/protoc-gen-go-tableau-loader/messager.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,20 +23,16 @@ const (
pairPackage = protogen.GoImportPath("github.com/tableauio/loader/pkg/pair")
timePackage = protogen.GoImportPath("time")
sortPackage = protogen.GoImportPath("sort")
fmtPackage = protogen.GoImportPath("fmt")
protoPackage = protogen.GoImportPath("google.golang.org/protobuf/proto")
)

// golbal container for record all proto filenames and messager names
var messagers []string
var errorsPackage protogen.GoImportPath
var codePackage protogen.GoImportPath

// generateMessager generates a protoconf file corresponding to the protobuf file.
// Each wrapped struct type implement the Messager interface.
func generateMessager(gen *protogen.Plugin, file *protogen.File) {
errorsPackage = protogen.GoImportPath(string(file.GoImportPath) + "/" + *pkg + "/" + errPkg)
codePackage = protogen.GoImportPath(string(file.GoImportPath) + "/" + *pkg + "/" + codePkg)

filename := filepath.Join(file.GeneratedFilenamePrefix + "." + pcExt + ".go")
g := gen.NewGeneratedFile(filename, "")
generateFileHeader(gen, file, g)
Expand Down Expand Up @@ -224,7 +220,7 @@ func genMapGetters(gen *protogen.Plugin, g *protogen.GeneratedFile, message *pro
g.P("d := ", container, ".Get", field.GoName, "()")
lastKeyName := keys[len(keys)-1].Name
g.P("if val, ok := d[", lastKeyName, "]; !ok {")
g.P(`return `, returnEmptyValue, `, `, errorsPackage.Ident("Errorf"), `(`, codePackage.Ident("NotFound"), `, "`, lastKeyName, `(%v) not found", `, lastKeyName, `)`)
g.P(`return `, returnEmptyValue, `, `, fmtPackage.Ident("Errorf"), `("`, lastKeyName, `(%v) %w", `, lastKeyName, `, ErrNotFound)`)
g.P("} else {")
g.P(`return val, nil`)
g.P("}")
Expand Down
2 changes: 1 addition & 1 deletion cmd/protoc-gen-go-tableau-loader/ordered_map.go
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ func genOrderedMapGetters(gen *protogen.Plugin, g *protogen.GeneratedFile, md pr
keyName = fmt.Sprintf("BoolToInt(%s)", keyName)
}
g.P("if val, ok := conf.Get(", keyName, "); !ok {")
g.P(`return nil, `, errorsPackage.Ident("Errorf"), `(`, codePackage.Ident("NotFound"), `, "`, lastKeyName, `(%v) not found", `, lastKeyName, `)`)
g.P(`return nil, `, fmtPackage.Ident("Errorf"), `("`, lastKeyName, `(%v) %w", `, lastKeyName, `, ErrNotFound)`)
g.P("} else {")
g.P(`return val.First, nil`)
g.P("}")
Expand Down
6 changes: 3 additions & 3 deletions test/go-tableau-loader/main.go
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package main

import (
"errors"
"fmt"
"time"

"github.com/tableauio/loader/test/go-tableau-loader/hub"
"github.com/tableauio/loader/test/go-tableau-loader/protoconf/loader/code"
"github.com/tableauio/loader/test/go-tableau-loader/protoconf/loader/xerrors"
"github.com/tableauio/loader/test/go-tableau-loader/protoconf/loader"
"github.com/tableauio/tableau/format"
"github.com/tableauio/tableau/load"
"github.com/tableauio/tableau/store"
Expand All @@ -33,7 +33,7 @@ func main() {

// error: not found
if _, err := conf.Get3(100001, 1, 999); err != nil {
if xerrors.Is(err, code.NotFound) {
if errors.Is(err, loader.ErrNotFound) {
fmt.Println("error: not found:", err)
}
}
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 6 additions & 7 deletions test/go-tableau-loader/protoconf/loader/hero_conf.pc.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 2 additions & 3 deletions test/go-tableau-loader/protoconf/loader/item_conf.pc.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 6 additions & 7 deletions test/go-tableau-loader/protoconf/loader/patch_conf.pc.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading