INNER CODE UNIT · Go

func

rigdev/rig · cmd/rig-proto-gen/main.go:367

func (p *protoPackage) validate() error {
	allMessages := map[string]struct{}{}
	for _, f := range p.files {
		for _, m := range f.messages {
			if _, ok := allMessages[m.name]; ok {
				return fmt.Errorf("message %s defined multiple times", m.name)
			}
			if err := m.validate(); err != nil {
				return fmt.Errorf("message %s has errors: %q", m.name, err)
			}
			allMessages[m.name] = struct{}{}
		}
	}
	return nil
}

func (p *protoFile) compile(b *strings.Builder) {
	b.WriteString("syntax = \"proto3\";\n")

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…