func main()

in events/generate/events_generate.go [103:175]


func main() {
	events := make(map[string]*eventData)
	err := filepath.Walk(dataDir, func(path string, info os.FileInfo, err error) error {
		if err != nil {
			return fmt.Errorf("accessing path %q: %v", path, err)
		}

		if info.IsDir() {
			return nil
		}

		data, err := ioutil.ReadFile(path)
		if err != nil {
			// A source file not existing is fine.
			if os.IsNotExist(err) {
				return nil
			}
			return fmt.Errorf("reading file %q: %v", path, err)
		}

		if data == nil {
			return nil
		}

		name, t, c := breakdownFileName(info.Name())
		if name == "" {
			return nil
		}
		ed, ok := events[name]
		if !ok {
			ed = &eventData{}
			events[name] = ed
		}

		d := "[]byte(`" + string(data) + "`)"
		switch t {
		case legacyType + input:
			ed.LegacyInput = d
		case legacyType + output:
			if c {
				ed.ConvertedLegacyOutput = d
			} else {
				ed.LegacyOutput = d
			}
		case cloudeventType + input:
			ed.CloudEventInput = d
		case cloudeventType + output:
			if c {
				ed.ConvertedCloudEventOutput = d
			} else {
				ed.CloudEventOutput = d
			}
		}

		return nil
	})
	if err != nil {
		log.Fatalf("walking %q: %v", dataDir, err)
	}

	f, err := os.Create(outputFile)
	if err != nil {
		log.Fatalf("creating event_data.go: %v", err)
	}
	defer f.Close()

	if err := tmpl.Execute(f, events); err != nil {
		log.Fatalf("executing template: %v", err)
	}

	return

}