(cctx *Context, off uint64)
| 60 | } |
| 61 | |
| 62 | func (u *UnionEncoder) Metadata(cctx *Context, off uint64) (uint64, ID) { |
| 63 | off, tags := u.tags.Segment(off) |
| 64 | values := make([]ID, 0, len(u.values)) |
| 65 | for _, val := range u.values { |
| 66 | var id ID |
| 67 | off, id = val.Metadata(cctx, off) |
| 68 | values = append(values, id) |
| 69 | } |
| 70 | return off, cctx.enter(&Union{ |
| 71 | Tags: tags, |
| 72 | Values: values, |
| 73 | Length: u.count, |
| 74 | }) |
| 75 | } |