frostfs-api-go/util/protogen/internalgengo/getter.go
Evgenii Stratonikov adb7c602d7 [#77] protogen: Initial implementation
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-08-19 10:47:00 +03:00

14 lines
479 B
Go

package internalgengo
import "google.golang.org/protobuf/compiler/protogen"
func emitGetterSetter(g *protogen.GeneratedFile, typeName string, fieldName string, fieldType string, defaultValue string) {
g.P("func (x *", typeName, ") Get", fieldName, "() ", fieldType, " {")
g.P("if x != nil { return x.", fieldName, "}")
g.P("return ", defaultValue)
g.P("}")
g.P("func (x *", typeName, ") Set", fieldName, "(v ", fieldType, ") {")
g.P("x.", fieldName, " = v")
g.P("}")
}