See #42
Unified · Split
| @@ -158,9 +158,13 @@ func genAnyStruct(typ reflect.Type) *Generator[any] { · 157 unmodified lines | ||
| 158 | 158 | |
| 159 | 159 | return Custom[any](func(t *T) any { |
| 160 | 160 | s := reflect.Indirect(reflect.New(typ)) |
| 161 | − for i := 0; i < numFields; i++ { | |
| 162 | − f := reflect.ValueOf(fieldGens[i].value(t)) | |
| 163 | − s.Field(i).Set(f) | |
| 161 | + if numFields == 0 { | |
| 162 | + t.s.drawBits(0) | |
| 163 | + } else { | |
| 164 | + for i := 0; i < numFields; i++ { | |
| 165 | + f := reflect.ValueOf(fieldGens[i].value(t)) | |
| 166 | + s.Field(i).Set(f) | |
| 167 | + } | |
| 164 | 168 | } |
| 165 | 169 | return s.Interface() |
| 166 | 170 | }) |