package avro

func walkSchema( Schema,  func(Schema) Schema) Schema {
	 = ()

	switch s := .(type) {
	case *RecordSchema:
		for ,  := range .Fields() {
			.typ = (.typ, )
		}
	case *ArraySchema:
		.items = (.items, )
	case *MapSchema:
		.values = (.values, )
	case *UnionSchema:
		for ,  := range .types {
			.types[] = (, )
		}
	}
	return 
}