| khenaidoo | 0927c72 | 2021-12-15 16:49:32 -0500 | [diff] [blame] | 1 | package internal |
| 2 | |
| 3 | import ( |
| khenaidoo | 0927c72 | 2021-12-15 16:49:32 -0500 | [diff] [blame] | 4 | "github.com/golang/protobuf/proto" |
| 5 | ) |
| 6 | |
| khenaidoo | 0927c72 | 2021-12-15 16:49:32 -0500 | [diff] [blame] | 7 | // GetUnrecognized fetches the bytes of unrecognized fields for the given message. |
| 8 | func GetUnrecognized(msg proto.Message) []byte { |
| Abhay Kumar | 40252eb | 2025-10-13 13:25:53 +0000 | [diff] [blame^] | 9 | return proto.MessageReflect(msg).GetUnknown() |
| khenaidoo | 0927c72 | 2021-12-15 16:49:32 -0500 | [diff] [blame] | 10 | } |
| 11 | |
| 12 | // SetUnrecognized adds the given bytes to the unrecognized fields for the given message. |
| 13 | func SetUnrecognized(msg proto.Message, data []byte) { |
| Abhay Kumar | 40252eb | 2025-10-13 13:25:53 +0000 | [diff] [blame^] | 14 | refl := proto.MessageReflect(msg) |
| 15 | existing := refl.GetUnknown() |
| khenaidoo | 0927c72 | 2021-12-15 16:49:32 -0500 | [diff] [blame] | 16 | if len(existing) > 0 { |
| 17 | data = append(existing, data...) |
| 18 | } |
| Abhay Kumar | 40252eb | 2025-10-13 13:25:53 +0000 | [diff] [blame^] | 19 | refl.SetUnknown(data) |
| khenaidoo | 0927c72 | 2021-12-15 16:49:32 -0500 | [diff] [blame] | 20 | } |